TXT 4.0 Uhrzeit auslesen

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
Benutzeravatar
calliope
Beiträge: 15
Registriert: 11 Mär 2025, 12:02

TXT 4.0 Uhrzeit auslesen

Beitrag von calliope » 17 Mai 2025, 10:04

Der TXT 4.0 Controller zeigt im Display eine Uhrzeit an. Wie kann ich diese auslesen? Einen Block habe ich nicht gefunden. Es müsste aber mit Python funktionieren. Die Hilfe (KI) sagt mit import machine. Das gibt es aber beim TXT 4.0 Python nicht.
ImportError: No module named 'machine'

Benutzeravatar
fishfriend
Beiträge: 2208
Registriert: 26 Nov 2010, 11:45

Re: TXT 4.0 Uhrzeit auslesen

Beitrag von fishfriend » 17 Mai 2025, 10:16

Hallo...
Geht momentan (!) über Import Time.
Schau dir mal das Beispiel TM_A2 vom AddOn KI an. Da wird dem Bildnamen die Zeit angehängt.
So wie ich das sehe gibt es bald einen extra Block dafür.
Kann schon sein, dass der in der momentan verfügbaren Version schon drinn ist, aber das Beispiel von oben läuft .
Mit freundlichen Grüßen
Holger
ft Riesenräder PDF: ftcommunity.de/knowhow/bauanleitungen
TX-Light: Arduino und ftduino mit RoboPro

tintenfisch
Beiträge: 519
Registriert: 03 Jan 2018, 22:04

Re: TXT 4.0 Uhrzeit auslesen

Beitrag von tintenfisch » 17 Mai 2025, 10:30

Das funktioniert, unabhängig vom TXT, bspw. über das datetime Modul, welches Python von Haus aus mitbringt:

Code: Alles auswählen

>>> import datetime
>>> datetime.datetime.now().time()
datetime.time(10, 27, 31, 555872)
>>> datetime.datetime.now().time().isoformat()[:5]  # Nur die Stunde/Minuten
'10:27'
>>>

Benutzeravatar
calliope
Beiträge: 15
Registriert: 11 Mär 2025, 12:02

Re: TXT 4.0 Uhrzeit auslesen

Beitrag von calliope » 17 Mai 2025, 11:32

Vielen Dank für die Antworten. Ich habe es jetzt so gemacht. Da kann ich jeden Wert als Zahl aus der Liste holen.
Wenn ich dann noch die Zeitzone auf dem Controller auf Germany stelle, und der Controller ins Internet kommt, stimmt die Zeit auch.

Code: Alles auswählen

import time
time_list = list(time.localtime())
# time.struct_time(tm_year=2025, tm_mon=5, tm_mday=16, tm_hour=11, tm_min=3, tm_sec=18, tm_wday=4, tm_yday=136, tm_isdst=0)
# [2025, 5, 16, 11, 3, 18, 4, 136, 0]

tintenfisch
Beiträge: 519
Registriert: 03 Jan 2018, 22:04

Re: TXT 4.0 Uhrzeit auslesen

Beitrag von tintenfisch » 17 Mai 2025, 11:41

Die Umwandlung des Rückgabewertes zu einer Liste kann man sich m.E. sparen (je nach Kontext, resp. was Du damit vorhast), da der Rückgabewert, sollte es Dir darum gehen, dass Du per Index auf die Werte zugreifen kannst, das bereits anbietet:

Code: Alles auswählen

>>> ltime = time.localtime()
>>> ltime[0]
2025
>>> ltime[1]
5
>>> ltime[2]
17
>>> # ... und so weiter

Antworten