Wert einer Variable permanent speichern

Alles rund um TX(T) und RoboPro, mit ft-Hard- und Software
Computing using original ft hard- and software
Forumsregeln
Bitte beachte die Forumsregeln!
Antworten
Stefan
Beiträge: 27
Registriert: 07 Nov 2011, 11:52

Wert einer Variable permanent speichern

Beitrag von Stefan » 28 Feb 2013, 10:03

Hallo,

vielleicht kann mir jemand weiterhelfen. Ich habe mit meinen Söhnen den Farbsortierroboter aus dem ROBO TX ElectroPneumatic gebaut. Mit dem Programm auf CD funktionierte er nicht, da die Werte des Farbsensors bei den Farben Weiß, Rot, Blau anders sind. Also habe ich die Werte über das Testinterface ausgelesen, und im Programm geändert, jetzt geht es.
Meine Idee ist, ein kleines "Kalibrierungs" - Unterprogramm zu schreiben, das nacheinander Weiß, Rot und Blau auf den Farbsensor auflegt, und die Werte speichert.
Nach dem Auschalten des Robo TX sind die Werte jedoch wieder verloren.

Jetzt meine Frage: Besteht die Möglichkeit, diese Werte irgendwie permanent zu speichern?

Gruß,
Stefan

jona2004
Beiträge: 149
Registriert: 10 Jun 2011, 22:30

Re: Wert einer Variable permanent speichern

Beitrag von jona2004 » 28 Feb 2013, 12:52

Hallo Stefan,
Vor zwei Wochen habe ich mit meinem Sohn auch den Farbsortierer gebaut und bin dabei auf die gleichen Probleme gestossen. Bei der Suche hier im Forum bin ich auf Rei Vilo's website gestossen. Rei schlaegt vor den Abstand Gehaeuse zu Sensor zu verringern. Das hat schonmal sehr viel gebracht.
http://reivilofischertechnik.weebly.com ... c-set.html
Dann habe ich das Gehaeuse so verschoben, dass die Steine fast immer mittig zu liegen kommen. Anschliessend habe ich dann per ProPro Test feature die neuen Farbwerte ausgemessen und die Konstanten im Programm abgeaendert. Seitdem laeuft das sehr stabil auch die weiss/rot Erkennung funktioniert.

Aber zurueck zur Frage:
Wir haben RoboPro auch erst seit Weihnachten, aber die einzige mir bekannte Methode daten einzulesen ist per csv Liste (Hilfe->Variable->Liste).
Natuerlich muesste das programm entsprechend abgeaendert werden um die Liste zu durchsuchen.
Ich habe noch die Frage an fischertechnik bzgl. EEPROM und I2C gesehen. Das Unterprogram und das Datenblatt des EEPROMs habe ich mir mal angesehen und der von fischertechnik benutzte addressraum kann ohne Änderung am Programm nicht irrtümlich angesprochen werden. Sollte also gehen.

Gruesse Joachim

Benutzeravatar
Dirk Fox
ft:pedia-Herausgeber
Beiträge: 1833
Registriert: 01 Nov 2010, 00:49
Wohnort: Karlsruhe
Kontaktdaten:

Re: Wert einer Variable permanent speichern

Beitrag von Dirk Fox » 28 Feb 2013, 23:22

Hallo Stefan,
Stefan hat geschrieben:Jetzt meine Frage: Besteht die Möglichkeit, diese Werte irgendwie permanent zu speichern?
ja, via I²C im EEPROM des TX (wie Joachim schrieb und Du in Deinem anderen Posting vermutet hast).
Näheres dazu findest Du in den ApplicationNotes im RoboPro-Verzeichnis:
The TX Controller has an integrated Microchip 24AA08 I2C EEPROM. This device occupies I2C addresses 0x50 to 0x57 (7-bit = 0xA0 to 0xAF 8-bit). The TX Controller firmware uses the first sector at device address 0x50 and 0x54. These addresses are not accessible via ROBOPro. The other sectors are free and can be used by ROBOPro programs. A ROBOPro driver for the EEPROM is available in the library folder. A total of 768 bytes is accessible by this driver. (...) Note: The main program of the library .rpp file for the EEPROM (I2C\EEPROM-TXintern.rpp) contains an interactive tool for viewing, modifying and clearing data in the EEPROM.
Einzige Beschränkung: Das EEPROM verträgt maximal 1 Mio. Lösch-/Schreibzyklen. Aber wenn Du die Daten nicht ständig anpasst, dürftest Du diese Grenze nicht so bald überschreiten :-)

Beste Grüße,
Dirk

Antworten