Inhaltsverzeichnis:
- Schritt 1: Datenanalyse - Warum Bienen zählen?
- Schritt 2: Verbesserungen am vorherigen Design
- Schritt 3: Allgemeiner Betrieb
- Schritt 4: Montageanleitung
- Schritt 5: Erstprüfung
- Schritt 6: Endmontage
- Schritt 7: Dual Footprint Micro Controller Pinouts
- Schritt 8: Arduino-Code
- Schritt 9: Stückliste
- Schritt 10: Bestellung von Leiterplatten
Video: Easy Bee Counter - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:16
2019 Easy Bee Counter V.1
Bei Fragen oder Problemen!! Bitte posten Sie sie hier auf der Github-Site!
Diese Version des Bienenzählers ist einfach zu löten und zu montieren (alles Durchgangsloch). Es wurde getestet und funktioniert* mit bereitgestelltem Beispielcode.
Das aktuell getestete Design ist einfach zu programmieren und für Programmieranfänger zugänglich. Die Leiterplatte akzeptiert mehrere Arduino-Plattformen von Adafruit, einschließlich ihrer Reihe von Mikrocontrollern vom Typ Adafruit Feather und Adafruit ItsyBitsy-Mikrocontrollern. Die Adafruit-Federn umfassen WLAN- und Langstreckenfunkfunktionen (esp8266*, esp32 und LoRA). Alle ItsyBitsy 3V-Modelle (M0, M4 und 32u4) sollten einwandfrei funktionieren.
*Die Feder esp8266 fehlt A5. Wenn Sie diesen uController verwenden, müssen Sie auf einen anderen verfügbaren Pin brücken.
Schritt 1: Datenanalyse - Warum Bienen zählen?
Einsatzmöglichkeiten
- die Zunahme oder Abnahme von Bienenflügen könnte auf die Gesundheit des Bienenstocks hinweisen
- die Ausweitung oder Abnahme von Orientierungsflügen über Tage könnte die Gesundheit der Königin signalisieren
- die zeitliche Verschiebung zwischen den Spitzen der Bienen, die gehen und zurückkehren, könnte auf die Anzahl der Sammler und die Entfernung zur Pollen-/Nektarquelle hinweisen.
-
Vergleich zwischen zwei oder bewegte Bienenstöcke, um auf Manipulationen zu testen; wie zum Beispiel,
- Hinzufügen/Entfernen von Honig-Supers
- interne Zuckersirupfütterung
- Behandlungen mit Oxalsäuremilben
- Einführung in Elektronik, Löten und Mikrocontroller-Programmierung
- Honigbienenerziehung oder museale Installation
Gesundheit des Bienenstocks
Die Gleichsetzung von Bienenflugdaten und Orientierungsflügen mit der Gesamtgesundheit des Bienenstocks oder der Gesundheit der Königin scheint möglich. Orientierungsflüge sind ein Verhalten von Bienen "mittleren Alters", die etwa 20 Tage alt sind. Vor der Nahrungssuche verlassen Bienen in diesem Alter den Bienenstock gegen Mittag als Gruppe, was zu einem leicht zu erkennenden ~45-minütigen Spitzenwert in den Daten führt.
Wenn die Orientierungsflüge zurückgehen, kann dies auf eine Verringerung der Eiablage ~42 Tage vorher (22 Tage Schlupf + 20 Tage bis zur Futteraufnahme) hindeuten.
Nahrungssuche Distanz
In den Daten sind leicht kleine, aber deutliche Verschiebungen zwischen Bienen OUT und Bienen IN zu erkennen. Dies gibt sowohl eine Menge an Bienen, die gemeinsam aus- und zurückkehren, als auch eine ungefähre Entfernung oder Zeit zum Nahrungssucheort an.
Schritt 2: Verbesserungen am vorherigen Design
- Alle Durchsteckkomponenten für einfaches Löten
- Dual Footprint, gesockelte, handelsübliche uController => Feather und ItsyBitsy
- Programm in Arduino, Lua und microPython - Insgesamt 24 Gatter, 48 Sensoren, 6 Schieberegister
- ~ 14,75" lang, um die gesamte Öffnung eines Langstroth-Bienenstocks für eine einfache Platzierung zu dehnen
- Die Verwendung von 2 Leiterplatten zum Erstellen eines Sandwiches ist eine kostengünstige schnelle Lösung. Die Leiterplatten müssen schwarz bestellt werden (siehe Anleitung), damit der IR-LED-Strahler in das Material absorbiert wird.
- Verwenden Sie 6 Stiftleisten, um die Wendestile oder Tore zu erstellen
- N-Ch-Mosfet-gesteuerte IR-LEDs, sodass LEDs während der Erfassung (~ 75 us) für kurze Zeit eingeschaltet werden können. Ermöglicht eine reduzierte Leistung auf weniger als 1 mA (plus uController).
Schritt 3: Allgemeiner Betrieb
Infrarot (IR) Sensoren
Honigbienen werden durch 24 Tore getrieben, in denen optische Sensoren (48 Sensoren) feststellen, ob die Biene anwesend ist und die Richtung der Bienenbewegung bestimmen. Jeder optische Sensor verfügt über eine IR-LED und einen IR-Sensor. Ist keine Biene vorhanden, wird das IR-Licht von der schwarzen Oberfläche absorbiert. Wenn eine Biene anwesend ist, wird das IR-Licht von der Biene reflektiert und löst den Sensor aus.
Die 48 LEDs sind in zwei Sätze von 24 unterteilt, wobei jeder Satz von einem N-ch-Mosfet gesteuert wird. Die normale Durchlassspannung jeder IR-LED beträgt 1,2 V und etwa 20 mA, wie auf dem Datenblatt angegeben. Zwei LEDs sind mit einem 22 Ohm Widerstand in Reihe geschaltet. Auf der Platine befinden sich Jumper, die es den LEDs ermöglichen, die Strombegrenzungswiderstände zu umgehen. Löten Sie den Jumper nicht, bis er vollständig getestet ist! Siehe Montageanleitung.
Einschubregister
Es gibt 6 Schieberegister. Hier ist eine großartige Beschreibung zum Anschließen und Programmieren von Schieberegistern. Die SPI-Pins des Mikrocontrollers lesen die Schieberegister. Alle sechs Schieberegister werden gleichzeitig gelesen. Die Sensoren werden normalerweise auf Low gezogen und zeigen 3,3 V oder HIGH an, wenn ein Transistor ausgelöst wird und eine Biene vorhanden ist.
StromversorgungDas PCB-Design verbindet den USB-Stromanschluss des Mikrocontrollers mit dem 3,3-V-Regler, sodass ein an den Mikrocontroller angeschlossenes USB-Kabel das gesamte Projekt mit Strom versorgen kann.
Schritt 4: Montageanleitung
Diese Version des Bienenzählers besteht aus allen Durchgangslochkomponenten. Es ist einfach zu löten und zu montieren. Dies ist die 2. Version des Boards (V1), die im März 2020 fertiggestellt wurde. Wenn Sie das Board der Version 0 (Jan/Feb 2020) erhalten haben, müssen Sie nur einige meiner vorherigen Fehler beheben, einschließlich des Hinzufügens eines hier gezeigten Überbrückungskabels.
1) Installieren Sie IR-Sensoren - QRE1113 oder ITR8307
2) Installieren Sie Schieberegister qty (6), SIP 22R LED-Widerstände und 100k Pulldown-Widerstände.
- Schieberegister, Stk.(6) 74HC165- 22 Ohm Widerstände, gebust, Stk(4) SIP verpackt, gebust - 100k Ohm Widerstände gebust, Stk(6) SIP-9, 8 Widerstände, 9 Pins
3) Installieren Sie Power-Mosfets Menge (2), - N-Channel Mosfet FQP30N06
4) Installieren Sie kleine Kondensatoren
5) 3.3V Leistungsregler platzieren/löten
- 3.3V Regler, (Eingang, Masse, Ausgang - IGO, Pinbelegung), Menge(1)
6) Installieren Sie einen großen Kondensator
- 560uF, 6.3V Kondensator
7) Installieren Sie grüne Schraubklemmen, Menge (3)
- Schraubklemmen Zweipolig, 0,1 , Menge(3)
8) Installieren Sie die Header für den Mikroprozessor
9) Installieren Sie Menge (4) 10K Widerstände (Bild ist falsch.. zeigt nur 2 Widerstände) - i2c Pullup-Widerstände - Pulldown-Widerstände für Power-Mosfets
Schritt 5: Erstprüfung
TEST Sensoren Bevor Sie weiterfahren, testen Sie alle Ihre LEDs/Sensoren! Es ist viel einfacher, diese jetzt zu testen, bevor Sie fortfahren. Führen Sie den Beispielcode Blink_IR_Leds.ino aus
Die IR-LEDs sind für das menschliche Auge unsichtbar, aber viele Telefone und Kameras ermöglichen es Ihnen, die IR-LEDs zu sehen. Siehe Bild. (Leider haben die meisten iPhones IR-Filter, also versuchen Sie es mit einem anderen Telefon, bis Sie IR-LEDs sehen). Dieser Schritt ist sehr wichtig, also stellen Sie sicher, dass Sie alle LEDs sehen können.
LEDs sehen gut aus? Wenn keine LEDs blinken? Stellen Sie sicher, dass an der 3,3-V-Stiftleiste 3,3 V anliegen. Wenn eine oder zwei LEDs aus sind, fließen Sie Ihre Pins um und / oder ersetzen Sie die LEDs, bis 100% LEDs zusammen blinken. LEDs gut, super, teste als nächstes die Schieberegister mit dem Beispielcode test_shift_registers.ino
Verwenden Sie ein weißes Blatt Papier, um die Sensoren auszulösen. Wenn einige Sensoren nicht funktionieren, überprüfen Sie Ihre Pins, erhitzen Sie die Pins und schmelzen Sie sie nach Bedarf auf.
Schritt 6: Endmontage
Beenden Sie die Montage, sobald alle Sensoren getestet wurden. Installieren Sie die Header, die die obere Platine mit der unteren Platine verbinden. !
Ok, wenn alles getestet ist, können Sie diese Jumper löten…. Das Löten der 24 Jumper erhöht den Wurfbereich der IR-Sensoren, indem die Durchlassspannung und der Strom in der LED erhöht werden. Dies ist in Ordnung, wenn wir die EIN-Zeit der LEDs auf weniger als 100 us halten. Dies ist im Datenblatt beschrieben.
Zwei bereitgestellte Skripte, sowohl test_shift_registers.ino als auch bee_counting.ino, erfüllen diese Anforderung, indem die LEDs nur für 75us eingeschaltet werden. Dies wird in Zeile 68 (Schieberegister) und Zeile 158 (bee_counting) gezeigt. Nach der EIN-Zeit gibt es eine Verzögerung von ~15-20ms, bevor sie wieder eingeschaltet werden, was die Lebensdauer der LED erhält.
Löten Sie alle 24 der Jumper.
Schritt 7: Dual Footprint Micro Controller Pinouts
Die Leiterplatte akzeptiert zwei Mikrocontroller im Adafruit-Stil. Die Mikrocontroller vom Typ Adafruit Feather und die Mikrocontroller von Adafruit ItsyBitsy. Die Adafruit-Federn umfassen WLAN- und Langstreckenfunkfunktionen (*esp8266, esp32 und LoRA). Alle ItsyBitsy 3V-Modelle (M0, M4 und 32u4) sollten einwandfrei funktionieren.
Leider sind die von uns verwendeten Schieberegister (der beliebteste Schieberegisterchip!) keine vollständigen SPI-Geräte und teilen die SPI nicht mit anderen Geräten. Sie sind wie die schlechtesten SPI-Geräte!… daher einige Boards wie der Adalogger oder LoRa funktioniert einfach nicht out of the box. Sie können es immer noch tun, indem Sie einige Spuren schneiden und die SPI-Leitungen auf freie SPI-Leitungen patchen und die SPI zu den Schieberegistern bitbangen, aber das ist in einem anweisbaren etwas schwer zu erklären.
Hardware-SPI
Der Beispielcode wurde für den Feather ESP32 und itsybitsy M0/M4 geschrieben, sollte aber mit anderen gut funktionieren. Die Hardware-SPI-Pins werden für beide verwendet: MISO & SCK.
Pin A5 auf dem ESP32 und itsyBitsy ist das Schieberegister LOAD * Pin A5 existiert nicht auf dem ESP8266. Wenn Sie dieses Board verwenden, müssen Sie auf einen anderen Pin brücken (sagen wir, der RX-Pin ist frei)
Power-Mosfets
Zwei Pins sind mit den Power-Mosfets verbunden, die die IR-LEDs ansteuern
-
Federnadeln
- Pin 15 für Tore 0-11
- Pin 33 für Tore 12-23
-
ItsyBitsy-Pins
- Pin 10 für Tore 0-11
- Pin 11 für Tore 12-23
Zusätzliche Pins
Es gibt Schraubklemmen (grün), um zusätzliche Sensoren an die i2C-Pins (SDA und SCL) anzuschließen. Es gibt auch einen analogen Pin A4, der an eine der Schraubklemmen angeschlossen ist.
Schritt 8: Arduino-Code
Es sind drei Arduino-Skripte angehängt.
- Blink_IR_leds.ino - wird verwendet, um die Funktion von LEDs visuell zu überprüfen
- test_shift_registers.ino - dient zum Funktionstest von Sensoren
- bee_counting.ino - verwendet, um Bienen zu zählen!
Warnung
Das Löten der 24 Jumper erhöht den Wurfbereich der IR-Sensoren, indem die Durchlassspannung und der Strom in der LED erhöht werden. Dies ist in Ordnung, wenn wir die EIN-Zeit der LEDs auf weniger als 100 us halten.
Die beiden obigen Skripte test_shift_registers.ino und bee_counting.ino erfüllen diese Anforderung, indem die LEDs nur für 75us eingeschaltet werden. Dies wird in Zeile 68 (Schieberegister) und Zeile 158 (bee_counting) gezeigt.
Kalibrieren des Bienenzählers
Ich habe im Laufe der Jahre einige erstaunliche Daten erfasst. Es ist möglich, den Bienenzähler zu kalibrieren, um die erforderliche Wiederholbarkeit zu erreichen. Je nach gewünschtem Effekt gibt es verschiedene Möglichkeiten, den Bienenzähler zu kalibrieren. Eine Methode besteht darin, die Geschwindigkeit der Bienenbewegung zu messen und nur bekannte Bewegungen zu zählen und alle falschen Auslöser auszuschließen. Diese Methode übersieht viele Bienen, kann aber konsistente Werte liefern. Eine Biene braucht etwa 180-350 ms, um den Sensorbereich zu durchqueren.
Der Beispielcode bee_counting.ino misst die Geschwindigkeit der Bienen durch den Sensor und zählt Bienen, die sich schneller als 650 ms bewegen und fordert, dass die Zeit zwischen dem Beenden eines Sensors und dem Beenden des zweiten Sensors weniger als 150 ms beträgt.
Einige der Hindernisse für die Kalibrierung sind:
- Obwohl Bienen den Sensoren kein Propolis hinzufügen, verbringen sie mehrere Tage damit, Hohlräume bei der Erstinstallation mit Propolis zu füllen
- Bart an den Sommerabenden und allgemeine Wachbienen, die darüber nachdenken, geben falsche Auslöser
- direktes Sonnenlicht in einem niedrigen Winkel löst falsche Sensoren aus (dies kann ziemlich leicht abgeschwächt werden)
Schritt 9: Stückliste
Mikrocontroller
Der Code wurde mit der Feder esp32 Huzzah und itsyBitsy M0 getestet, funktioniert aber mit all diesen Boards.
- Feder Huzzah von mouser
- Feder esp8266 von mouser
- Feder LoRa 900mhz von mouser
- ItsyBitsy M0 von mouser
- ItsyBitsy M4 von mouser
Leiterplatte von JLCPCB ~ 16-25 $ mit Versand.
Bestellen Sie die Platinen Schwarz. Siehe PCB-Bestellanweisungen.
Teile und Teile
Hier ist eine zusammenfassende Preisliste von mouser. Siehe alternative Preise unten für günstigere Optionen speziell für die Reflexionssensoren.
QRE1113 Reflektierende Sensoren Menge(48)
6-polige Buchsenleisten 7 mm hoch, 0,1 Abstand, Menge (~36)
22-Ohm-Widerstände, Bussed, Menge (4) SIP-verpackt, 9 Widerstände, 10 Pins
100k Ohm Widerstände Bussed, Menge(6) SIP-9, 8 Widerstände, 9 Pins
Schieberegister, Menge(6) 74HC165
3.3V Regler, (Eingang, Masse, Ausgang - IGO, Pinbelegung), Menge(1)
Schraubklemmen Zweipolig, 0,1 , Menge(3)
0,1 uF Keramikkondensator, Durchgangsloch, Menge(6)
1 uF Keramikkondensator, Durchgangsloch, Menge(1)
560uF, 6,3 V Kondensator niedriger ESR, 3,5 mm Leitungsabstand, 8 mm Durchmesser
N-Kanal-Mosfet FQP30N06, Menge (2)
10k Widerstände, Menge (4), generisch 1/4 Watt
Stiftleisten 6-polig, ~Menge(32) oder… 12-polige Menge(17) und nach Bedarf auseinanderbrechen
Alternative Preise vom chinesischen Distributor LCSC
Jemand wies auf alternative Preise hin, die die Kosten wirklich senken können.
- ITR8307 Reflexionssensoren ~0,13 $/Stück @ Menge (48) (wie QRE1113)
- 6-polige Buchsenleisten 8,5 mm hoch. ~ 0,05 $/jeweils @ Menge (36+)
- 22 Ohm SIP 8 Widerstand, 9 Pin, es passt. 0,44 $ für Menge(4)
- 100k SIP-Widerstände 8-Widerstand, 9-polig, es passt. 0,44 $ für Menge(6)
Schritt 10: Bestellung von Leiterplatten
Es gibt viele verschiedene PCB-Hersteller zur Auswahl. Diese Anweisungen zeigen JLCPCB. Sie brauchen einen Hersteller, der schwarze Leiterplatten herstellen kann. Die IR-LEDs/Sensoren müssen auf eine schwarze Oberfläche zeigen, um falsche Trigger zu vermeiden, daher muss die untere Platine schwarz sein. Die minimale JLCPCB ist qty(5) Boards und Sie benötigen 2 Boards, die zusammengeschoben werden müssen, um einen Bienenzähler zu vervollständigen.
1. Laden Sie das gesamte Repo herunter … klicken Sie auf die große grüne Schaltfläche mit der Aufschrift "Clone or download" github … navigieren Sie zur Datei "gerbers.zip" unter dem PCB-Ordner.
2. Gehen Sie zu JLCPCB.com, erstellen Sie ein Konto und klicken Sie auf die Schaltfläche JETZT BESTELLEN.
3. Klicken Sie auf "Ihre Gerber-Datei hinzufügen" und laden Sie die gezippten Dateien hoch
4. Wählen Sie 'Schwarz' als PCB-Farbe. Wählen Sie auch für "Bestellnummer entfernen" JA
Die Kosten betragen etwa 8 USD für eine Mindestbestellmenge von (5) PCBs plus 9-16 USD Versand je nach Methode.
Zweiter Preis bei der PCB Design Challenge
Empfohlen:
Polargraph Gondel (easy Peasy): 4 Schritte
Polargraph Gondola (easy Peasy): Dies ist ein super einfacher, schneller Aufbau einer Polargraph (hängenden Zeichenroboter) Gondel. Ich habe mir einen Polargraphen gebaut und schnell gemerkt, wenn man einen zu Hause bauen möchte, braucht man einen 3D-Drucker, um einen zu bauen. Ich habe eine ähnliche Version im Netz gesehen und d