Farmbot is an open source CNC agricultural machinery and software package, designed for small-scale precision food production. Similar to the 3D printer and CNC milling machine, the Farmbot hardware uses linear rails in the X, Y and Z directions. This allows tools such as seed syringes, water nozzles, sensors, and weeding tools, which are precisely positioned and used in plants and soils.
Farmbot Control is controlled by the Arduino / RAMPS stack and the internet connection. The hardware design is simple, scalable, can be broken and easy to produce.
With web applications, users can graphically design their farm or garden to their desired specifications and make digital control code with hardware. Other features include storage and operational data mapping, promoting decision support systems for data-driven design, accessing an open factory data repository, and real-time control and record.
Open is the core of this project
Farmbot is 100% open source. This article records everything in the dedicated hardware documentation and software documentation and the community Wiki. All code use license licenses on Github. Welcome feedback, copy, modification, and problems. In the Farmbot project, further sources are more useful than open source.
Hardware overview
Farmbot is a CNC machine that uses special tools and software to plant plants. The first device Farmbot Genesis is an outdoor XYZ machine that expands from a m2 plantation to 20 square meters. Depending on the size of the device, the estimated cost is between $ 1,500 to $ 4,000.
Core component
The following core components and materials are selected in the Farmbot design, with excellent corrosion resistance, general availability, easy to manufacture, relatively low cost.
The V-trough aluminum profile and V-wheels are from OpenBuilds. These act as the main structural components and linear boot mechanisms of Farmbot. These extruded parts are high, just use a crowds to easily cut, and adopt a fully open source design.
A custom-designed 5 mm thick plate is used to connect the extruded parts, wheels, and other components to the structure of Farmbot. These panels can be made of aluminum plates, stainless steel or even plastic. They can be made with CNC milling cutters, laser cutters, water knife cutters, and even only need patience drilling machine.
Choose the most popular electronic products in DIY Hardware: NEMA 17 Step Motors, GT2 belts and pulley, and Arduino Mega / Ramps / Raspberry Pi 2 electronic stack.
Universal tool mounting system, tool, motor housing, and support racks are optimized, 3D printing with amateur fans FDM printers.
All screws, three-way nuts, gaskets, bearings, drive shafts, and guide screws are made of stainless steel with corrosion resistance.
track:
The track is one of the components that break the Farmbot technology from traditional free driven wheel tractors. The track is why the system has high precision in an efficient and simple way. There are many reasons why the track is superior, and some are listed below.
The track provides high precision, allowing Farmbot to return to the same location without using GPS, short-range radio or other sensors.
You can create and manage any type of factory packaging structure (for example: hexagon packaging)
The track occupies the path of the tractor wheel and does not compare the soil.
Gantry
The gantry is a structural component that bridges two tracks and moving in the X direction. It operates with a single NEMA 17 step motor and drive shaft across the gantry width. The motor and drive shaft are connected to the belt and pulley system on each track, allowing the rack to synchronize the track synchronous motion without being constrained. The gantry is used as a linear guide of the lateral sliding device.
Sliding horizontal
The transverse slide moves through the gantry in the Y direction. This action provides the second main degree of freedom for Farmbot and allows planting to be planted anywhere in the XY plane. Use the NEMA 17 stepper motor to move the lateral slider with belt and pulley system. The lateral slider is used as a mounting point and a linear guide of the Z-axis.
Z-axis
The z-axis is connected to the lateral slider, providing the z direction to Farmbot via the NEMA 17 step motor and the guide screw. It is the basis for connecting the Universal Tool Mount and other tools.
General tool holder
General Tool Mounting systems provide 12 electrical connections and 3 liquids or gas pipelines that support any tool you can imagine. The tool uses magnetic coupling to allow Farmbot to automatically select the right tool for work.
Seed syringe
Seed syringes are a separate 3D printable assembly that exploits vacuum draws to the precise tip. Its working principle is to remove and draw a seed from the seed box, then place it under the precise position. Farmbot controls the ready-made vacuum pump to apply and eliminate the tip of vacuum pressure.
Water nozzle
The watering nozzle is also a 3D print assembly that disperses the water from the general tool holder into a mild shower stream. In order to control water, Farmbot opens and closes input water sources from the standard garden hose using an inner solenoid valve. You can imagine that Farmbot can accurately water plant according to the soil type and water content; local weather history and forecast; and plant types and age!
Software overview
There are many software systems that help farmbot's features. The following figure shows different components and data flow between them. Read the brief description of each component in the following sections to understand the entire system, then understand the components required to set the Farmbot settings. Click here to get the high resolution version of the overview map.
Farmbot web application
With web applications, you can easily configure and control Farmbot from a web browser on your laptop, tablet or smartphone. The application has real-time manual control and logging to create a sequence builder of a custom routine executed by a Farmbot, as well as a drag and drop farm designer, so you can design and manage the farm in a graphical way.
Drag and drop agriculture
The farm is designed by dragging and dropping the plant into the map. Similar to the interface is only a few minutes to learn, so you can grow up immediately. The plant is automatically spaced apart and can be administered during planting.
Growth plan
Establish a complete solution to take care of plants throughout the life cycle by schedule sequences operating in a particular age. You can reuse the scheme to save your time and energy during replantation.
Sequential construction
Quickly and easily create custom operation sequences to take full advantage of your hardware - no programming. Simply drag and drop the basic operations and other sequences together, adjust the parameters according to your own preference, and save it.
Real-time control
Move Farmbot and use the manual control to operate its tool in real time. At the end of the next friend, take out the mobile phone for fast and impressive demos!
Farmbot Grid
Farmbot Mesh is a cloud app that serves as a mediation between a Farmbot web application and a Farmbot device. It handles socket connections, device identification, and authentication. Provide hosted Farmbot Mesh services in Mesh.farmbot.io. It is recommended that most people use it because it is convenient and always keeps synchronization with the latest features and security.
Improve Farmbot grid
Submit Farmbot Mesh's feature requests, errors, and code on Github.
Coming soon: decision support system
Decision Support System (DSS) is a cloud service that uses fine adjustment algorithms to optimize predetermined events based on relevant data. For example, DSS can optimize watering order based on weather forecasting to use more or less water.
Farmbot Raspberry Controller
Farmbot's Raspberry Pi uses this software through the Farmbot Mesh maintenance connection and synchronizes with the web application. This allows Farmbot to download and perform scheduled events, real-time control, and upload logs and sensor data. The controller uses the ruby gemstone named Farmbot Serial (mentioned in the next section) to communicate with Arduino via USB.
Farmbot series
Farmbot Serial is a Ruby Gem, bundled in Raspberry Pi Controller. It uses a USB serial connection to Arduino to send G and F code commands and receive data collected.
Farmbot Arduino firmware
The software flashes on the ARDUINO MEGA 2560 microcontroller of Farmbot, which is responsible for physical operation of Farmbot hardware, tools, sensors, and other electronic devices. It receives G and F code from Farmbot Serial via USB serial connection, then moves the motor and reads and writes the pin accordingly. It also sends collected data from the rotary encoder, and reads the pin back to the Raspberry Pi via Farmbot Serial.
Coming soon: WiFi Configurator
The Raspberry Pi will have a WiFi Configurator utility that allows you to easily log in to the PI from a device that supports WiFi (such as laptops or smartphones) to access terminals and some configuration settings. This is very useful for initial settings, which can connect Farmbot to home wifi, or debugging when PI cannot connect to the Internet.
Openfarm.cc
OpenFARM.CC is a free open agriculture and gardening knowledge database. This service provides crop and growth information for web applications to streamline user experience.
OpenFARM is also built by us!
OpenFARM was initially considered a small component of the Farmbot project. As progress, it is obvious that OpenFARM has no reason to tie together with Farmbot, but can live independently. In September 2014, 1,605 people support OpenFarm on Kickstarter. Today, OpenFarm is an independent application, non-profit organization and community. You can participate in Github, or go to OpenFarm.cc, or create content to openfarm.cc, or create content to OpenFARM.cc!
Be
Data is swapped in three ways through web browser sessions through web applications, Raspberry PI controllers and users.
Automatic and manual synchronization
The FarmBot's Raspberry PI controller automatically synchronizes with the web application per hour and manually starts from the user via the browser. The data transmitted during synchronization includes logs, configuration settings, sensor data, sequences, plans, and events.
Real-time data exchange
In addition to synchronization, data is also exchanged in real time between users' web browser and Farmbot devices. This is used for emergency stop and real-time control commands, as well as real-time logs and video streams.
Be
Source: HackADAY.IO
The original content of the circuit city is not allowed to reprint!
Board evaluation cooperation mailbox:
[email protected]
Our other product: