Werbung
Hallo,
was sind denn die gemessenen Summen-Maximum-Werte mit und ohne Schürze bei Deinem Asuro?Zitat von inka
Schön ist es auch, eine unabhängige Bestätigung für den Faktoreffekt einer weißen Schürze zu bekommen ...![]()
Das war es schon fast, einfach noch http:// davor, und die Bildendung dahinter, ich habe schon .gif, .jpg und .jpeg ausprobiert, die gibt es nicht, aber Du müßtest ja die korrekte URL Deines Bildes kennen ...![]()
gemessene werte der fototransistoren:
beide über weiss, summe 1990
beide über schwarz, summe 190
schwarze streifen (5mm) in der mitte, summe 900
gemessen mit dieser software von hans_z:
dazu gleich eine frage (ich kann schöne schürzen bauen, inzwischen auch schon bilder im forum einfügen, mit der sw klappts (noch) nicht so...Code:#include "asuro.h" // Prüfung der Phototransitoren /* ------------ Line Sensor Test ---------------- */ /* Left Sensor -> Left Break LED ON when Light on Left Phototransistor bright enough */ /* Right Sensor -> Right Break LED ON when Light on Right Phototransistor bright enough */ int main(void) { unsigned char tmp[2] = {OFF,OFF}; unsigned int data[2]; unsigned int z; Init(); SerWrite("\n\r --- Line Sensor Test ---",28); StatusLED(OFF); FrontLED(ON); do { /* for(z = 1; z < 100; z++); EDIT 1: unnützer Code { } */ LineData(data); if (data[0] > 400) tmp[0] = ON; else tmp[0] = OFF; if (data[1] > 400) tmp[1] = ON; else tmp[1] = OFF; BackLED(tmp[0],tmp[1]); SerWrite("\n\r Phototransistorwerte links/rechts: ",39); PrintInt(data[0]); //SerWrite("-",1); PrintInt(data[1]); // SerWrite("\f",1); //Seitenvorschub EDIT 2: bringt Fehler bei der Ausgabe } while(1); return 0; } /* END Line Sensor Test ------------------------- */
Zwischen den werten data li/re sollte ein zwischenraum, evtl. mit einem bindestrich, schrägstrich o.ä. erscheinen, ich habe die zeile
auskomentiert, weil nur mist ausgegeben wurde. Irgendwelche sonderzeichein statt blank oder bindestrich, doppelter umbruch usw.Code:PrintInt(data[0]); //SerWrite("-",1); PrintInt(data[1]);
woran liegt das?
gruß inka
Hallo
Wenn dies bei mir auftritt, liegt es meist an einer fehlerhaften (falsch gezählten) SerWrite-Anweisung. Allerdings kann ich in deinem Code keine entdecken. Du könntest testweise mal alle nicht benötigten Ausgaben auskommentieren, so dass der asuro nur noch die Daten und/oder die Trenner sendet. Vielleicht kannst du so den Fehler eingrenzen....sollte ein zwischenraum, evtl. mit einem bindestrich, schrägstrich o.ä. erscheinen
Vielleicht stören auch die Umlaute/Sonderzeichen in den Kommentaren. Bei mir werden solche Codes irgendwie nicht richtig übersetzt.
Inzwischen schafft mein asuro den Testkurs auch, allerdings nur schleichend und gelegentlich in der Haarnadelkurve (unten rechts) zirkelnd. Hier schwenkt er so ungeschickt von der Seite über die Linie dass er den Status nicht mehr richtig umschaltet. Das Problem hat er mit meinem eigenen Code und auch mit dem Code vom myIRasuro.
Filmchen folgt nach dem Grillen![]()
Gruß
mic
![]()
Atmel’s products are not intended, authorized, or warranted for use
as components in applications intended to support or sustain life!
Hallo,
hats Du auch noch den Wert für Mitte über 15mm Streifen?Zitat von inka
Verwende doch SerPrint(), da wird für Dich gezählt!Zwischen den werten data li/re sollte ein zwischenraum, evtl. mit einem bindestrich, schrägstrich o.ä. erscheinen, ich habe die zeile
auskomentiert, weil nur mist ausgegeben wurde.Code:PrintInt(data[0]); //SerWrite("-",1); PrintInt(data[1]);
Einfach den THRESHOLD weiter reduzieren, damit die Regelung früher eingreift und der Asuro gar nicht soweit von der Linie wegkommt ...Zitat von radbruch
Bei uns kommt das Grillen erst um 18Uhr ...Filmchen folgt nach dem Grillen![]()
@hermann_sw
das kann ich sicher nicht 1:1 ersetzenZwischen den werten data li/re sollte ein zwischenraum, evtl. mit einem bindestrich, schrägstrich o.ä. erscheinen, ich habe die zeile
Code: PrintInt(data[0]);
//SerWrite("-",1);
PrintInt(data[1]);
auskomentiert, weil nur mist ausgegeben wurde.
Verwende doch SerPrint(), da wird für Dich gezählt!![]()
die wetre über mitte eines 15mm schwarzen streifen liegen bei 400 - 420
@damaltor
beim leerzeichen wir bei mir ein "ß" ausgegeben. Liegt warscheinlich an der mehrsprachigen "umgebung" die ich (nicht nur im rechner) habe![]()
gruß inka
hrhr... wie seiht es mit normalen zeichen aus? also abcde... usw. gehen die? sonst mach halt irgendwas dazwischen, nur halt dass es getrennt ist... oder lass dir alle mögliches nonderzeichen ausgeben und schau, welches du als leerzeichen eintragen musst.
teste mal:
SerPrint(" ");
../hans_z_transistorenabgleich.c:36: undefined reference to `SerPrint'teste mal:
SerPrint(" ");
make: *** [hans_z_transistorenabgleich_2.elf] Error 1
btw:
es ist ganz egal was ich da einsetze, es wird immer "ß" ausgegeben...
gruß inka
Lesezeichen