Tryck och temperaturövervakning (5 / 10 steg)
Steg 5: Relevé des données depuis la hallon
Il faudra scanner les différents anordning BLE à porté de la hallon via la commande ci-afterski. Cette commande renverra le nom ainsi que la mac adresse de chaque enhet à porté. Il faudra copier coller l'adresse mac du RedBearLab.
Kopiator coller le script python ci dessous,
http://www.doritique.fr/articles/View_Article.php?...
Modifieraren la variabel ble_addr du skriptet python par la mac adresse du RedBearLab obtenue précédemment.
Il faudra aussi modifier le script python comme ci-dessous afin qu'il envoi le buffert de requête attendu par la ReadBearLab et korrespondent au capteur inte på veut récupérer les données.
importera os
importera sys
importera pexpect
Importera tid
importera urllib2
importera urllib
ble_addr = "E5:AE:C1:71:96:E4"
klass Sensortag:
def __init__(self,ble_addr):
Self.ble_addr=ble_addr
Self.Child = pexpect.spawn ("gatttool -t random -b" + ble_addr + "-jag")
Self.Child.expect ("\ [LE\] >")
skriva ut ("försök att ansluta till styrelsen")
Self.Child.sendline('connect')
Self.Child.expect ("anslutning framgångsrika")
Print("Connected")
returnera
def getTemperature(self):
skriva ut ("försöker uppdatera temperaturen")
Self.Child.sendline ("char-skriva-req 0x0011 0100-lyssna")
Self.Child.expect ("karakteristiska värdet skrevs framgångsrikt")
Self.Child.sendline ("char-skriva-cmd 0x000e A00100")
Self.Child.expect ("anmälan handtag = 0x0010 värde: 0b. *')
rval = self.child.after.split()
skriva ut ("temperatur:" + str (int (rval [7], 16)))
returnera int (rval [7], 16)
def getPressure(self):
skriva ut ("försöker uppdatera trycket")
Self.Child.sendline ("char-skriva-req 0x0011 0100-lyssna")
Self.Child.expect ("karakteristiska värdet skrevs framgångsrikt")
Self.Child.sendline ("char-skriva-cmd 0x000e A00300")
Self.Child.expect ("anmälan handtag = 0x0010 värde: 0b. *')
rval = self.child.after.split()
Tryck = "" + rval [6] + rval [7]
skriva ut ("tryck:" + str (int (tryck, 16)))
returnera int (tryck, 16)
def exit(self):
Self.Child.sendline('exit');
returnera
def main ():
sensortag=Sensortag(ble_addr)
samtidigt sant:
tmpIR=sensortag.getTemperature()
prsIR=sensortag.getPressure()
Time.Sleep(3)
sensortag.Exit();
#time.sleep(10)
om __name__ == "__main__":
Main)