Jump to content

fdrews

Members
  • Gesamte Inhalte

    6
  • Benutzer seit

  • Letzter Besuch

Posts erstellt von fdrews

  1. Also einfach nach enumerate() nen time.sleep von 2.5 Sekunden wenn ich dich richtig verstanden habe?

     

    Das funktioniert soweit. Vielen Dank.

     

    Hast du vielleicht eine andere Idee wie man das besser realisieren kann. Aktuell muss man ja die UID`s hart coden. Wenn man jetzt z.B. den Luftdruck messen möchte. Ich würde natürlich gerne auslesen die UIDs und dann übergeben so dass man nicht die UID fest rein schreiben muss.

     

     

  2. Hallo Tinkergemeinde.

     

    Es geht um vollgendes. Ich würde gerne über die Callbacks die uid auslesen und in einer globalen variable ablegen lassen. Das auslesen an sich ist kein Problem aber irgendwie scheinen die Callbacks nicht rechtzeitig durchzulaufen. Vielleicht habt ihr eine Idee. Die Ausgabe habe ich einfach mal angehangen.

     

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    
    HOST = "localhost"
    PORT = 4223
    
    UID_Barometer = None 
    UID_Humidity = None
    UID_AmbientLight = None
    
    from tinkerforge.ip_connection import IPConnection
    from tinkerforge.bricklet_barometer import Barometer
    
    def my_testcallback(uid, connected_uid, position, hardware_version, firmware_version,
                     device_identifier, enumeration_type):
    
    if device_identifier == 221: 
    	global UID_Barometer
    	UID_Barometer = uid
    	print('test: ' + UID_Barometer)
    
    elif device_identifier == 27: 
    	UID_Humidity = uid
    	print('test: ' + UID_Humidity)
    elif device_identifier == 21: 
    	UID_AmbientLight = uid
    	print('test: ' + UID_AmbientLight)	
    
    if __name__ == "__main__":
    
    ipcon = IPConnection() 
    ipcon.connect(HOST, PORT) 
    
             ipcon.register_callback(IPConnection.CALLBACK_ENUMERATE, my_testcallback)
    ipcon.enumerate()	
    
    print('test2: ' + str(UID_Barometer))
    print('test2: ' + str(UID_AmbientLight))
    print('test2: ' + str(UID_Humidity))
    
    #b = Barometer(UID_Barometer, ipcon) # die uid`s brauch ich um die bricklets anzusprechen
    
    #air_pressure = b.get_air_pressure()/1000.0
    
    #print('Air Pressure: ' + str(air_pressure) + ' mbar')
    
    #altitude = b.get_altitude()/100.0
    
    #print('Altitude: ' + str(altitude) + ' m')
    
    input('Press any key to exit\n')
    
    ipcon.disconnect()

     

    Vielen Dank schon mal im vorraus für die Hilfe.

    Unbenannt.jpg.4eb17ce2f5d202e74d1d30c90c3db2b9.jpg

×
×
  • Neu erstellen...