Bienenwaage erste Version
Da der gekaufte Laderegler nicht zufriedenstellend funktionierte wurde die Schaltung verändert und die Laderegelung und Datenerfassung auf einem Arduino zusammengefasst. Der Arduino Yun bzw. dessen Atheros AR9331 dient nur noch der Übertragung der Daten in das Internet.
Platine Solarregler (laderegler_3V.sch)
Mittlerweile gibt es eine neue Version des Solarreglers, die Funktionsweise und der grundlegende Schaltungsaufbau sind gleich, jedoch auf einem Board zusammengefasst.
Platine Steuerung (arduino_speicher_ad.sch)
Anschluss für Sensoren und Yun über Netzwerkkabel
Pin 12 DP6 1-Wire
Pin 14 DP8 Waage ein
Pin 15 DP9 CLK Waage 2
Pin 16 DP10 Data Waage 2
Pin 17 DP11 CLK Waage 1
Pin 18 DP12 Data Waage 1
Pin 27 A4 SCL I²C
Pin 28 A5 SDA I²C
3V Grundversorgung für Sensoren
-
-
-
Anschluss für Programmierung ATmega
Anschlüsse für Erweiterungsplatine
Pin ATmega 2, 3, 4, 5, 6, 9, 10, 12, 13, 18
Jumper für Stromversorgung 3V ein/aus
-
Erweiterungsplatine
Anschluss für Taster mit zwei Kontroll-LEDs
Anschluss für weitere Sensoren über Netzwerkkabel
Anschluss für Motortreiber
Anschluss direkt an Batterie für Stellmotor der Solarzelle, wird beim Einschalten der Sensoren über Q1 eingeschalten
Anschluss für 2 Helligkeitssensoren (derzeit
TSL250R)
Verbinderplatine für Netzwerkkabel/Gewichtssensoren/Temperatursensoren
Anschlüsse für
Netzwerkkabel zur Steuerplatine
durch die Steuerplatine geschaltete Batteriespannung
3V DC
-
-
fest verbunden ist das 5V-Netzteil für den Arduino Yun
feste Kabel:
farbe | funktion | wohin |
rot | 3V | |
grau | Masse | |
grün | SDA | Yun Pin2 |
blau | SCL | Yun Pin3 |
Steckleiste, gezählt von 3V Steckanschluss aus
pos | funktion | farbe |
1 | PWR | rot+grün |
2 | data1 | gelb |
3 | CLK1 | orange |
4 | DATA2 | violett |
5 | CLK2 | blau |
Am Yun:
das gelbe kabel an 5V
Netzteil 5V für Arduino Yun
Modifizierter Arduino Yun
Kommunikation mit ATmega328P-PU der Steuerplatine
I²C
1-Wire
Two-Wire Serial Digital Interface
Kommunikation mit ATmega32U4 des Yun
Der Arduino Yun wird über I²C vom Laderegler gesteuert. Der Yun liest auf entsprechenden Befehl die auf dem Eeprom gespeicherten Messwerte direkt von diesem aus.
Da diese Variante, die zwar sehr gut und schnell funktionierte, programmiertechnisch etwas kompliziert ist und Modifizierungen in verschiedenen Bibliotheken erforderte habe ich den Arduino Yun durch einen Router GL-MT300N-V2 mit OpenWrt ersetzt und die Kommunikation auf RS232 geändert. Dies lässt sich einfacher konfigurieren, ist billiger und man kann auch mit jedem Laptop die Daten auslesen.
Fehler
Was brennt durch, wenn man die Batterie verpolt anschließt?
Arduino Yun, 5-Volt Schaltregler und Waage waren zum Glück nicht angeschlossen.
Die Liste wird sicherlich noch fortgesetzt. . .
LED Kontrollanzeigen
Yun
einsbyte=0xFF;
pingbyte=1;
readybyte=2;
schwarmalarmbyte=3;
uploadbyte=4;
waitbyte=5;
wlanonbyte=6;
sleepbyte=7;
deleteeeprombyte=8;
moretimebyte=9;
fotobyte=10;
timebyte=11;
eeprom_freigeben=12;
bewegungsbyte=13;
Steuerung
Speicherreihenfolge
timestamp batterie
V Batterie
Temperatur Batterie
DCA Batterie
ICA Batterie
CCA Batterie jetzt genutzt für mAh kapazität
V solar1
Platzhalter für V solar2
Gewicht
weightSensorRaw1
weightSensorRaw2
gewicht1 Gramm
gewicht2 Gramm
temperatur_bienen
temperatur_waage
temperatur_kasten
temperatur_erde1
temperatur_erde2
hell_links, jetzt duty
hell_rechts
wind
windrichtung
RealTimestamp timestamp utc
loadcurrent durchschnittlicher Verbrauch mA*100
999
Testprogramm Hardware
Laderegler
Motortest 3 Sekunden Richtung +1
Motortest 3 Sekunden Richtung -1
EEPROM lesen
Systemdaten lesen
Messwerte lesen
Wartezeit für Test I²C
Yun
EEPROM lesen
Timestamp abholen
I²C sendet nullbyte an Laderegler und wartet auf Antwort