Alkoholtester mit Hifle Arduino und Figaro TGS822

Gast #4761020
Lesenswert?

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() {}
#4761082
Lesenswert?

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
Gast #4761166
Lesenswert?

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
Gast #4761854
Lesenswert?

@Tasg (Gast) Ich verstehe nicht was du von mir willst?


Hier mal eine Ergänzung des void loop()

void loop() {
  analogRead(5);
  Serial.println(analogRead(5));

  if (analogRead(5)>=30)
  {
    digitalWrite(gruen, 1);
    digitalWrite(gelb1, 0);
}else{
  digitalWrite(gelb1, 0);
  digitalWrite(gelb2, 0);
  digitalWrite(rot1, 0);
  digitalWrite(rot2, 0);
  digitalWrite(rot3, 0);
  digitalWrite(rot4, 0);
}
{
 if(analogRead(5)>=80)
 {
  digitalWrite(gelb1, 1);
  digitalWrite(gruen, 0);

 }else{
  digitalWrite(gruen, 0);
  digitalWrite(gelb2, 0);
  digitalWrite(rot1, 0);
  digitalWrite(rot2, 0);
  digitalWrite(rot3, 0);
  digitalWrite(rot4, 0);
 }
 if(analogRead(5)>130)
 {
  digitalWrite(gelb2, 1);

 }else{
  digitalWrite(gruen, 0);
  digitalWrite(gelb1, 0);
  digitalWrite(rot1, 0);
  digitalWrite(rot2, 0);
  digitalWrite(rot3, 0);
  digitalWrite(rot4, 0);
 }
Gast #4762030
Lesenswert?

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 :-)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren