Skip to content

StemBerry is a python script that generates an interface and data collection tool for the SOCEM device, developed at the AgMEQ lab. Austin Bebee was the original author of StemBerry. I have further developed StemBerry for what will hopefully be a streamlined data collection experience.

Notifications You must be signed in to change notification settings

claytonsrobot/StemBerry

Repository files navigation

StemBerry

StemBerry is a python script that generates an interface and data collection tool for the SOCEM device, developed at the AgMEQ lab. Austin Bebee was the original author of StemBerry. I have further developed StemBerry for what will hopefully be a streamlined data collection experience.

Instructions for running StemBerry:

o With python3 installed on your system, StemBerry can run as a clickable executable or from an IDE.

o On Windows, you may have to pip install a few python packages, depending on what you already have – listen to your errors to know what you need.

o On Linux, you’ll probably sudo apt-get install your packages.

If you want to use StemBerry with Arduino for data collection, to see pretty numbers generated when you press “Start”, I can send a current copy of serialConnection_v11.ino. When provided with a serial connection, StemBerry will collect and store data.

Superusers: If you’re willing to crack open the Python to change CSV header names and to crack open the Arduino to change your sensor pins, StemBerry can be used to store any three datastream vectors of any pinnable sensor that you want.

The UX and file output is optimized for SOCEM experimentation, specifically for up and coming wheat trials, which happen in about two weeks.

StemBerry_v81 features:

o Variety and plot name text input fields. These are passed to filename.

o No typing necessary. Names will be autogenerated to day and time, if either variety or plot name is missing

o Text field population buttons. Text generating buttons include force bar number calculator and file name identifier flags for Side1, Side2, Side3, and Forward hits, as well as a number identified.

o The PeakClick tool, following force data collection, is built in, so that human oversight can occur at point of sale. No post processing required.

o State save backup file generation, which can be selected manually from the dropdown menu. State save is also triggered, which the Compile Nine Cell Data button is pressed.

o The Compile Nine Cell Data button pulls in all the data from the current state and uses it to calculate nine cell flexural stiffness data results. State data is optimized for nine-cell-scheme use, and includes up to four force array from four different SOCEM pushes

Future development:

o PeakClick needs to be migrated to a tkinter popup window within the StemBerry GUI. Currently is launches as a separate matplotlib window. PeakClick currently runs and saves data, but it can only be used once, and to save data, the StemBerry GUI needs to be closed. No Bueno. This is a window manager issue.

o More variables can be added to the save state backup file.

o Increase number of significant digits for nine-cell mass and diameter data saved to backup file.

Upcoming StemBerry field application: This field season, we’ll be focused on side hits and nine-cell scheme data correlations. I have huge expectations for correlations between mass, density, and sampled diameter.

Nine-cell scheme design:

  1. Equalize stem heights
  2. Record Variety and Plot names
  3. Enter stem height and cell location data
  4. Perform four SOCEM tests: Three side hits in different spots in a plot, and then a forward hit through the whole plot.
  5. Use the WheatSqueezer hardware device to collect stems from each cell, recording the mass of the stems, the stem count, and sampled diameters.
  6. Press compile! You, my friend, now have a complete data object for a small plot of cereal crop. Now go get the next one!
    The nine-cell data scheme approaches testing in a way that increases accuracy. Rather than assuming homogenous stem density, stem count for each cell is known, ensuring a more accurate flexural stiffness results. Side hits in conjunction with a forward hit provide enough data for rich 3D imaging.

Data output plan: The processing scripts are in place such that the field data can be visualized using a color-gradient 3D map. The 3D map, which shows all results from the field season in one model, will accurately represents the flexural stiffness of wheat. Results can be compared on a single map for several dozen small plots in a field. Each small plot will be represented by nine cells, with results distributed into essentially a 3D bar chart. Data can be shown and compared in nine cells per small plot for average raw force, flexural stiffness, stem count, sampled diameter, mass. Rich 3D plot maps, for raw force data, with weights calculated for each cell, can also be generated.

Attached ZIP file: There is also attached a zip file of images and 3D maps that can help provide insight for what the device application is. Images include:

o StemBerry GUI screenshots

o Small plot of wheat example

o WheatSqueezer

o Usage guides, past and present

o SOCEM device, past and present

o 3D map example, FBX file output (small <25 mb, emailable color-gradient 3D object) 3D Maps included:

o Flexural stiffness processed results for all small plots tested in 2021

o Flexural stiffness processed results for all small plots tested in 2021, including individual stems tested on universal testing machine.

o Raw force data and output figures with variation in side hits for all 2021 Soft Winter Wheat data

Legal: The SOCEM is patented with the United States patent office. The StemBerry GUI and the SOCEM device were developed at the University of Idaho in Dr. Daniel Robertsons’s AgMEQ lab. This project was funded by a grant from the National Science Foundation. StemBerry and all of its (numerous) versions are subject to all applicable constraints. While this project is not explicitly open-source, all allowable customization, usage, and development are encouraged by Clayton Bennett.

About

StemBerry is a python script that generates an interface and data collection tool for the SOCEM device, developed at the AgMEQ lab. Austin Bebee was the original author of StemBerry. I have further developed StemBerry for what will hopefully be a streamlined data collection experience.

Resources

Stars

Watchers

Forks

Packages

No packages published