WEEDINATOR 2025
Objectives:
• To provide an open source control system for farm robots on small farms. Small farmers are at risk of being squeezed out of the industry because automation is largely aimed at larger farms and is incredibly expensive. As farms get larger, rural communities get destroyed and a way of life living in close contact with the land gets lost. Small farms need to be able to compete effectively with larger farms and to help protect them, automation needs to be accessible at relatively low cost with a hands on DIY solution where systems can be built and repaired with ease and without expensive tools or highly skilled engineers. The control system is the weakest point in the chain as the mechanics are relatively simple. It should be as simple as possible to build, have a flexible 'hackable' design and be easy to learn on.
Solutions:
• After many iterations, we decided to make most of the circuits in the control system user configurable, rather than having too many inflexible PCB traces on the PCBs. This has the added advantage that prototyping is easier and faster as otherwise one wrongly routed PCB trace could ruin the whole board. The main MCU is the largest STM Nucleo we could find, with 144 pins, the NUCLEO-H723ZG, and is fully laden with masses of features, including the ability to run at least 3 quadrature encoders (there's probably more available).
• Keep the components as modular as possible so, for example, we use the whole Nucleo plug in board without attempting to solder STM chips on our own boards.
• The PCBs are stackable, so more NUCLEO-H723ZG modules can be added, for example. The motor controllers are on their own separate PCBs, which are also stackable.
Main Features of Control System:
• Control at least 3 DC motors / linear actuators with in-built quadrature encoders for positioning simultaneously.
• Switch at least 16 40A automotive relays for fuel pump, starter motor, glow plugs, hydraulic cylinder solenoids etc.
• Monitor at least 4 high ampage channels to provide 'digital fuses' and protect motors etc from becoming overloaded.
• Provide at least 10 conventional fuses for motors etc.
• Four x 16 bit Resistor divider circuits for sensing battery voltage, for example.
• Eight boolean Resistor divider circuits for sensing 12V positioning induction sensors, for example.
• Each of the above modules are stackable so, for example, there could be 8 or even 12 digital fuses.
• Cm level GPS.
• 4G modem.
Build Itinerary:
Stage 1:
• Make the steering and the throttle radio controlled using the onboard quadrature encoders in the motor and linear actuator in combination with inductive sensors to provide 'homing' locations at the mid point of the steering and the neutral position of the throttle. Since the machine is hydro-static, the throttle moves seamlessly from reverse to forward with a neutral position somewhere in the middle for 'stop' - trying to operate normal manual gears would be much more challenging!
Stage 2:
• Build up a super structure for protecting the internals from the weather and provide mounting points for the various antennae required.
Stage 3:
• Design and build an 'implement' to be positioned on the tractor's 3 point hitch which will have both x and y axis cultivation. The implement probably needs to be shrouded from external sun light to prevent strong shadows interfering with cameras.
Stage 4:
• Add cameras and extra control system for crop position detection to enable y axis cultivation.
Build logs:
Nov 2024, Current Sensor and Relay PCBs:
Featuring 4 channels of 16 bit 15A current sensing and 4 channels of 16 bit voltage sensing via voltage divider, this gadget can act as a digital fuse, protecting the motor driver and actuator from damage due to stalling. The steering actuator is particularly prone to this problem, even though it has an induction sensor at the mid position to reset encoder values - it's just too easy during development and commissioning of the machine to make a small mistake and blow up £200 worth of equipment. The resistor bridge can be used for accurately sensing battery voltage and anything else that crops up in the future.
The underside of the board has some heavy duty copper lugs soldered in to connect the current sensing TMCS1123 chips to the large Wago connectors. PCBWay could have supplied extremely heavy 8oz boards, but I chose this option to save cash. BTW, the boards from PCBWay are great quality and the service is superb. They also check with me on the more esoteric features of the board before sending to the press, which guarantees there are no mistakes in interpreting the Gerber files. The chips themselves come in various sensitivity ratings and the ones currently installed are good for +-15A on a 3V3 power supply. The maximum range seems to be +-92 A with the TMCS1123A1A.
This current sensor PCB sits on top of another PCB that has no electrical connections, just accurately placed mounting holes for 3 main modules - the current sensor, an analogue fuse box and a stack of motor controllers. The large white PCB can also be stacked up and there are large holes in the redundant space for cable routing. Mounting of the 3 modules has been checked and everything fits perfectly and the whole thing fits well in the main enclosure box with all the connections in sensible places. Phew !!
Featuring 16 channels with 40 amp automotive relays (relays not plugged in yet) and 2 experimental 4 amp high side switches, this board should be more than capable of illuminating the engine glow plugs (20 amps) and engage the starter motor solenoid (40 amps) for starting the engine. The DIP chips shown in the photo below are ST Stepper Motor Control/Driver L293D chips which can also be used for driving LEDs and relay coils as in this case. There must be some surface mount equivalents somewhere, but not found them yet. The connectors are all by the manufacturer Wago and were selected because of their solid mountings to the PCB and high spring clamping forces. The larger ones could easily break a finger if used wrongly. There's also a SMT 5v regulator for powering the driver chips with 470uF capacitor on the input. The relays could easily have been soldered directly onto the PCB, but using the mounts enable easy replacement if something goes wrong on the machine. The wiring of the relay high current terminals is not connected to the ground plane so a live feed can come out of the analogue fuse box, into the digital fuse box, if required, and then to the glow plugs, for example, which then connect to the machine's common earth.
On the reverse side, as below, there are giant lugs of copper soldered to the relevant relay pins and large grey Wago connectors to carry the 40 amps of current. The relays themselves have fly back protection and are the Durakool 'DR' type. If the 'D' type was used by mistake, there would be plumes of magick smoke emitted from the relays and melting of wire insulation. The PCB, acquired from PCBWay, is 2 oz in weight, which is double the normal thickness and this weight was used to ensure solid connections with the large Wago connectors and no damage to the traces when soldering with a 450 watt soldering iron.
Dec 2024, Commisioning the Steering, Throttles, Engine Stop Solenoid, Fuel Pump, Glow Plugs and Starter Motor:
The video below gives some basic tips about how the MCU PCB and the relay PCBs should be wired up including how the large high capacity cables should be kept away from signal cables. For ease of access to wire up the relays, the MCU PCB needs to be able to tilt on one edge which is enabled by routing the signal wires through one large square aperture in the PCB on the nearest side to the rear of the machine - watch the video! It's essential to label as many of the wires as possible and keep groups of wires eg signal wires to the relays, the same colour. Something the video does not mention is that there are no connectors in the walls of the control panel, just glands. In the past, connectors were used but they take up a lot of space, make the wiring extremely messy and are prone to damage if knocked or pushed. If or when connectors are required, they will be inserted inline instead. Watching the video, one inline connector can already be seen on the engine throttle actuator as the cable supplied by the manufacturer was far too short.
Dec 2024, Control Box:
None of the previous logs have really gone into any detail about the left hand green MCU PCB, so here we go! The main feature of the board cant actually be seen as it is slotted onto the underside of the board, namely the STM Nucleo H723ZG MCU. There's absolutely no point in having it on the top surface as it just takes up lots of space which is better occupied by connectors. There can be seen 4 rows of orange Wago connectors on the top surface in the photo below and these correspond to each and every one of the 144 pins on the H723ZG. The board has been carefully designed so that all the pin designations eg PC7 can be easily read on the PCB silk screen to help wiring up the system.
There's another row of these orange connectors on the right hand side and these have permanent connections to 3 banks of blue logic voltage shifter modules which convert the 5V from the 3 electric actuators (steering, throttle A and throttle B) to 3.3V, which is safe for the H723ZG pins. On the other side of the logic level shifter are yellow and white wires soldered in for the quadrature encoders. Other yellow and white wires connect from the MCU direct to PWM and direction terminals on the black Cytron motor control modules on the lower right hand side of the box.
On the very top left on the green MCU PCB is a small green GPS daughter board which is waiting for it's GPS modules to arrive. To the right is a 4G modem waiting for it's sim card to be inserted. Other than this there are two 5V and one 3.3V regulator with large capacitors on the 12V input side. There's also four simple voltage divider circuits, which cant be clearly seen, for changing the 12V signal from the inductor sensors to about 3V for compatibility with the H723ZG MCU.
If we look really closely, we can see a through hole transistor in the middle of the green PCB which is used to invert the signal from the SBUS receiver so that the MCU serial bus can recognise the data flowing in. The SBUS receiver itself is the black box perched precariously at the top of the box and is due to be moved to somewhere near the top of the machine with cables to extend the SBUS connections. The 4 purple wires at the lower edge of the box are for actuating the 4 engine relays as demonstrated in the previous log (engine stop solenoid, fuel pump, glow plus and starter motor) and are waiting to be assigned pins on the H723ZG.
Dec 2024, Overall Circuit Diagram:
Most of the circuits used in this system are relatively simple due to it's modular construction, so more complicated circuits such as the MCU are provided on separate modules, often from separate suppliers. For example, the MCU module is supplied ready to go as a STM Nucleo H723ZG. The main consideration in this project is the overall circuit diagram, which is extremely flexible and can be re-wired in seconds. We don't provide a 'digital' version of the diagram yet as it takes too long to make edits, instead, the diagram is drawn by hand and we create new copies using old fashioned light box technology which takes about 10 minutes to create a new updated version rather than 3 hours + for a digital one. For us, it's appropriate use of technology at this point in time.
As can be seen, the wiring is extremely simple. There's colour coding for different types of connection eg orange is used for serial connections. The only permenant connections are for the 3 PCB LEDs on the MCU board and the PCB buzzer. The LEDs replicate what's on the STM Nucleo module and all of them can be disconnected and re-allocated with a bit of soldering on the PCB and removing solder bridges on the STM Nucleo H723ZG. Notice there's no connection lines drawn in the diagram except for the four resistor bridge ciruits. This is to keep the diagram neat and tidy! Also, there are no connections indicated for the relays yet as this is work in progress.
Dec 2024, Testing Engine Start/Stop, Glow Plugs, Fuel Pump and Cut Off Solenoid Using Onboard 40A Relays:
Dec 2024, Homebrewed PID Algo in Action:
This video shows our home brewed PID algorithm in action. It runs at about 1/10 th real speed and displays graphs of encoder position, velocity (PWM) and acceleration (deltaPWM). There's some fairly outlandish sound scape generated by slowing down of the motor noise, but keeping the pitch the same.
Dec 2024, Cladding the Machine:
A hinging frame was built out of 30mm x 3 box section and temporarily clad with 2mm plywood. The plywood will be replaced with aluminum tread plate sometime in the near future. The whole structure, including the hinge, is mounted on 30mm rubber blocks to try and reduce vibration and get more accurate signals from the GPS antennae, which will be mounted on the top surface. The hinge itself ended up being more complicated than anticipated as an extra rubber mounted was needed in the horizontal plane. The structure is not unduly heavy, but to get easy access to the oil dip stick and engine cooling system, an simple electrical actuator might be a good idea - no need for quadrature encoders - just electrical end stops to prevent high stall currents at each end of travel.
Jan 2025, Radio Receiver Dome:
The photo above shows the radio receiver for radio control inside it's transparent fuse box dome in a half built state. The construction is quite fiddly and consists of 2 pentagon shaped PCBs, the top one being used to strap the receiver module down onto and the lower for some signal LEDs.
The lower PCB has 4 LED channels as below, red, green, blue and yellow. The four LED clusters are powered by 12 volts via the L293D chip. The chip itself requires 12V for the LED power, 5V for the logic power and can be activated with 3.3V output from the MCU.
Finished assembly:
Jan 2025, GPS Equipment:
Now that there is a temporary canopy, the GPS antennae can be installed. Here below is a photo of all the GPS stuff from Ardusimple in Barcelona:
3 survey grade GPS antennae
3 sets of cables for above
2 correction data radio antennae
3 Ublox GPS modules
2 long range radio transmitters for correction data
Jan 2025, BCS implement adapter installation:
Hydraulically activated parallelogram mechanism with BCS hitch attached for BCS type implements such as the finger mower seen in the video above.
Jan 2025, Maiden Voyage of the WEEDINATOR 2025:
Now that the ground is frozen, the WEEDINATOR 2025 can be tested without creating a muddy mess. One of the most crucial things was to see if the machine could drive REALLY slowly - and we were pleased with the results. The throttle on the hydraulic swash plate was very accurate but a bit slow to react and the machine drove a lot faster in reverse than forwards, which was a bit strange.
WEEDINATOR 2025
*PCBWay community is a sharing platform. We are not responsible for any design issues and parameter issues (board thickness, surface finish, etc.) you choose.
ESP32-S3 1.91inch AMOLED Display Development Board, 240×536, 32-bit LX7 Dual-core Processor, Up to 240MHz Frequency, Accelerometer And Gyroscope Sensor, ESP32 With Display
BUY NOWESP32-S3 4.3inch Capacitive Touch Display Development Board, 800×480, 5-point Touch, 32-bit LX7 Dual-core Processor
BUY NOW- Comments(5)
- Likes(1)
- Ben Koren Dec 06,2024
- 1 USER VOTES
- YOUR VOTE 0.00 0.00
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
-
10design
-
10usability
-
10creativity
-
10content
More by Capt. Flatus O'Flaherty
-
Module Split Mechanical Keyboard - Left Half
27 0 0 -
ORS 87 2025 MICROPHONE PCB with cut out for NTE10/3 transformer
33 1 0 -
-
-
Heart Rate Monitor Circuit Using Photoplethysmography (PPG)
146 0 0 -
-