User Tools

Site Tools


projects:farmrobot:start

Farmrobot

Meetings

Donnerstags, 16:00: IP_Farmrobot

DevOps

Protokolle

www.hochschule-rhein-waal.de_sites_default_files_images_2020_10_09_bild_cross_innovation_lab_niederrhein_erste-aktive_phase.jpg

1. Produktbeschreibung

Video of Ahmed's first robot test. For now I (RB) uploaded the video to my
personal channel but later it should be moved to another channel dedicted
to the Fablab or the student project.

2. Technische Spezifikationen

Version Prototyp 2, Spitzname - v0.2.20201125
Fortschritt Prototyp
Version Date November 2020
Terms of Use GPL / CC-BY-SA
Zusammenfassung Ein Open-Source-Roboters zur Unkrautbekämpfung im Acker- und Gemüsebau, ebenso, wie für den Einsatz auf Wiesen im Naturschutzgebiet
Schlüsselwörter
Beschreibung Der Farmroboter ist ein Mini-Traktor der gezielt Unkraut vernichten kann. Er verfügt er über einen Roboterarm mit dem er Pestizide direkt auf die unerwünschten Pflanzen aufbringen kann. Er kann sowohl manuell gesteuert werden als auch autonom einer pgrammierten GPS-Route folgen. Über eine Kamera und ein Bilderkennungssystem kann er Pflanzen erkennen die unter Ihm liegen und automatisch die Sprühvorrichtung steuern.
Vorgänger Versions 0.1
Leistung 700W
Gewicht
Dateien Realtime G-code (standalone), YOLOv5 (+ G-code)

3. Systemdiagram

(Bild Systemdiagram)

4. Bill of Materials

5. Funktionen

5.1 Motorisierung

Der Farmrobt verfügt über zwei 350W Gleichstrom-Motoren.
Kettenantrieb
Bereifung
Drehmoment
Geländetauglichkeit
Motortreiber
Einstellungen in Pixhawk

5.2 Batteriemanagement

The battery management system is a important part of the robot. It is responsible to monitor all values regarding electrical power and available energy for the robot. It also has protection features that ensure, that the battery used lasts as long as possible to make the system safe, reliable and sustainable. Based on the measured values, the system can decide when to return to the home base for charging. Also the important metrics can be sent to a control station to let the owner know about the status of the system. This part of the project tries to implement a monitoring system for the important metrics of the power delivery system.
Batteriemanagement

5.3 Manuelle Steuerung mit Fernbedienung

5.4 Steuerungs-Kamera

The FPV Camera serves a video stream as the first person view (FPV) of the Robot. This makes it possible to see the position of the Robot and anything in its way.
Steuerungs-Kamera

5.5 Objektverfolgung & Unkrauterkennung

This project utilizes YOLOv5 to detect and track various kinds of weeds. The X and Y coordinates generated by YOLOv5 are then used to control a delta arm via G-code that sprays the detected weeds with herbicide.

NVIDIA Jetson platform

The custom implementation of YOLOv5 is intended to be deployed on an NVIDIA Jetson Nano or NVIDIA Jetson Xavier NX using Docker.

To set up one of those devices, follow their respective guides to get started:

The default user should always have the following credentials:

User Password
jetson jetson

Repository

The repository is hosted on here.

The repository's README contains all necessary information about its setup and usage.

Step-by-step example

The step-by-step example goes through the whole process of setting up and using an NVIDIA Jetson Xavier NX with our custom YOLOv5 implementation.

Step-by-step example

Cameras

The implementation supports various CSI and USB cameras. The following cameras have been successfully tested with it:

Waveshare 16662 IMX219-160 Camera

Supported formats:

v4l2-ctl -d /dev/video0 --list-formats-ext
 
ioctl: VIDIOC_ENUM_FMT
        Index       : 0
        Type        : Video Capture
        Pixel Format: 'RG10'
        Name        : 10-bit Bayer RGRG/GBGB
                Size: Discrete 3264x2464
                        Interval: Discrete 0.048s (21.000 fps)
                Size: Discrete 3264x1848
                        Interval: Discrete 0.036s (28.000 fps)
                Size: Discrete 1920x1080
                        Interval: Discrete 0.033s (30.000 fps)
                Size: Discrete 1640x1232
                        Interval: Discrete 0.033s (30.000 fps)
                Size: Discrete 1280x720
                        Interval: Discrete 0.017s (60.000 fps)

ELP-USB8MP02G-SFV

Supported formats:

v4l2-ctl -d /dev/video0 --list-formats-ext
 
ioctl: VIDIOC_ENUM_FMT
        Index       : 0
        Type        : Video Capture
        Pixel Format: 'MJPG' (compressed)
        Name        : Motion-JPEG
                Size: Discrete 1600x1200
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 3264x2448
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 2592x1944
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 2048x1536
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 1280x960
                        Interval: Discrete 0.067s (15.000 fps)
                Size: Discrete 1024x768
                        Interval: Discrete 0.067s (30.000 fps)
                Size: Discrete 800x600
                        Interval: Discrete 0.067s (30.000 fps)
                Size: Discrete 640x480
                        Interval: Discrete 0.067s (30.000 fps)
                Size: Discrete 329x240
                        Interval: Discrete 0.067s (30.000 fps)
                Size: Discrete 1600x1200
                        Interval: Discrete 0.067s (15.000 fps)
 
        Index       : 1
        Type        : Video Capture
        Pixel Format: 'YUYV'
        Name        : YUYV 4:2:2
                Size: Discrete 1600x1200
                        Interval: Discrete 0.100s (10.000 fps)
                Size: Discrete 3264x2448
                        Interval: Discrete 0.067s (2.000 fps)
                Size: Discrete 2592x1944
                        Interval: Discrete 0.333s (3.000 fps)
                Size: Discrete 2048x1536
                        Interval: Discrete 0.333s (3.000 fps)
                Size: Discrete 1280x960
                        Interval: Discrete 0.100s (10.000 fps)
                Size: Discrete 1024x768
                        Interval: Discrete 0.100s (10.000 fps)
                Size: Discrete 800x600
                        Interval: Discrete 0.067s (30.000 fps)
                Size: Discrete 640x480
                        Interval: Discrete 0.067s (30.000 fps)
                Size: Discrete 329x240
                        Interval: Discrete 0.067s (30.000 fps)
                Size: Discrete 1600x1200
                        Interval: Discrete 0.100s (10.000 fps)

5.6 Missions-Planer

5.7 Autonomes Fahren mit GPS

5.8 Unkraut behandeln

python-Steuerung von cnc-Maschinen und 3d-Druckern für ML/AI-Anwendungen.
Delta Arm
Realtime G-code

5.9 Web Interface

5.10 Protokollierung

projects/farmrobot/start.txt · Last modified: 2021/04/19 13:12 by ferdi