Hallo zusammen,
kurz und knagig.
Ich muss ein Alkoholtester mit einem Arduino und einem Figaro TGS822
bauen. Einen Taster zum Reseten und eine Anzeige mit LED's. Die LED's
sollen jeweils mit 0,2 Promille steigen. 0,2 Promille die grüne LED, mit
0,4 Promille soll die erste gelbe LED leuchten, usw.
Die Hardware müsste soweit stimmen, die ich auf einem Steckbrett
aufgebaut habe. Allerdings bin ich ein Anfänger mit dem Arduino und im
programmieren!
Pinbelegungen:
7-13 LED-Anzeige
0 Taster für den Reset
A5 für die Ansteuerung des TGS822
Ich habe hier noch mal ein Sketch angefangen, welcher einfach aufgebaut
ist!
Ich bitte hiermit um Hilfe zur Vervollständigung des Programms(soll sehr
einfach aufgebaut sein, sodass ich es auch verstehen kann)
int gruen=13;
int gelb1=12;
int gelb2=11;
int rot1=10;
int rot2=9;
int rot3=8;
int rot4=7;
int reset=0;
void setup() {
pinMode(13, OUTPUT);
pinMode(12, OUTPUT);
pinMode(11, OUTPUT);
pinMode(10, OUTPUT);
pinMode(9, OUTPUT);
pinMode(8, OUTPUT);
pinMode(7, OUTPUT);
pinMode(0, INPUT);
}
void loop() {}
Auf ein main() verzichtest du?
Woher (aus welcher Variable oder mit welcher Funktion) beziehst du den
Alkoholpegel? Als was liegt der vor? Unsigned integer, signed integer,
welche Bitgröße? 8 Bit?
Hallo,
Tasg schrieb:> Auf ein main() verzichtest du?
er nutzt die Arduino-IDE, da ist das so schon ok, aber:
> Woher (aus welcher Variable oder mit welcher Funktion) beziehst du den> Alkoholpegel? Als was liegt der vor? Unsigned integer, signed integer,> welche Bitgröße? 8 Bit?
Es gibt kein Programm. Er setzt die Pins auf Eingang bzw. Asugang und
hofft offenbar nun, daß sich jemand mit dem Datenblatt des TGS822
beschäftugt und ihm dann das Programm dazu schreibt.
Das käme dann in loop() rein, die wird endlos durchlaufen.
Ich vermute aber, das ist etwas zu wenig von seiner Seite.
Wenn er wenigstens schonmal die LEDs leuchten lassen würde und/oder
versuchen würde, den Sensor auszulesen vielleicht...
Gruß aus Berlin
Michael
Das könntest du dir mal anschauen,
https://jenslabs.com/category/electronics/ketosis-detector/
Netterweise hat er auch seinen Arduino Quelltext auf github.
Hauptaufwand ist wohl die Kalibrierung
Led blinken und Code klauen musst du schon selber machen.
Gut geklaut ist halb gelernt ;-)
Bla B. schrieb:> wie testest du> das eigentlich^^? Hängst du hackedicht zuhause oder auf der Arbeit> rum:-D?
Vielleicht lädt er die örtliche Polizeiwache zu einem
Kameradschaftsabend ein, und die bringen ihre geeichten Pusteröhrchen
mit.
Nein so meint ich das nicht, will nicht den kompletten void loop
rauskopieren. Ich wollte eigl. auch noch was lernen.
@Michael U. (amiga): Ich habe schon einige Sachen mit den LED's gemacht,
z.B. blinken oder faden lassen, allerdings bringt es mir bei dieser
Aufgabenstellung nichts. Ich habe halt nur noch nie was mit Sensoren mit
kombination eines Arduinos was gemacht.
Bla Bla (tobita): Weder noch :P. Bei jedem Fehler beim Kompilieren gibt
es einen Shot :D
Ich habe das void setup() noch mit "Serial.Begin(9600);" ergänzt um zu
sehen was der Sensor da macht, allerdings hat das auch nicht so ganz
funktioniert.
Natürlich habe ich dann auch im void loop()"analogRead(5);
Serial.print(analogRead(1)); " ergänzt
Ich bitte eigl. nur das mir jemand hilft der Ahnung hat mir mein Sketch
fertig zu schreiben
Dan schrieb:> Ich bitte eigl. nur das mir jemand hilft der Ahnung hat mir mein Sketch> fertig zu schreiben
Ach so, na wenns weiter nichts ist... Ernsthaft?!
Ich habe damals so angefangen:
Erst die Kommentare, dann den Code. Das kann so aussehen.
//als erstes müssen wir den Sensor auslesen
//Ist der Wert < xxx, muss die rote LED eingeschaltet werden
//ist der Wert zwischen yyy und zzz die gelbe
//ist der Wert größer zzz die grüne
und so weiter.
Ich arbeite immer so, wie früher die Bildchen im Internet geladen
wurden. Erst grob, dann immer feiner.
Also:
Zuerst eine grobe Idee, was das für eine Funktion haben soll. Hast du
ja, Sensor lesen und LED anzünden.
Daraus entwickelt man sihc ein Konzept, was man machen muss, um das
umzusetzen. Das wären die Kommentare oben, natürlich noch verfeinert.
Hat man das, ist der Code schon fast fertig - der Rest ist
ausformulieren in C-Syntax.
Dann kommt natürlich noch testen :-)