J ai payé 85 € pour 30 minute de travail avec teamviewer à l entreprise les as consulting super réactif via condeur point com . je vous partage l’info. Si vs voulez me fournir 1 € symbolique, je suis preneur en mp , il me faudra 84 contributeurs
Pour pouvoir utilisées 2 sorties analogiques de la carte avec Jeedom, il faillait payer plus … donc j’ai laissé tombé pourlimité les dépenses
D’après rachid , il est impossible de faire un scripte directement dans jeedom car il est impossible d avoir accès au module HAT via le SPI par Jeedom. Uniquement avec l’API
1:
faire un virtuel et mettre 8 " info virtuelles"
2:
Pour chaques commandes tu vas dans " engrenage " de l’info virtuelle " et tu prends la valeur URL :
http://192.168.1.XXadresse_du_RPI/core/api/jeeApi.php?apikey=S08znpCz4GPj4ncNHMkKF3YG9BILLP8g&type=cmd&id=3055
API_KEY = « S08anpCn4GPj4ncNHMkKF3YG9BILLP8g » est la clef a mettre dans le code Python
3055 : est a mettre dans le code python => DATA={‹ apikey › : API_KEY , ‹ type › : ‹ virtual › , ‹ id › : ‹ 3055 ›, ‹ value › : (ADC_Value[0]*5.0/0x7fffff) }
response = requests.post(URL, params=DATA)
#!/usr/bin/python
# -*- coding:utf-8 -*-
import time
import requests
import json
import ADS1256
import DAC8532
import RPi.GPIO as GPIO
try:
ADC = ADS1256.ADS1256()
DAC = DAC8532.DAC8532()
ADC.ADS1256_init()
DAC.DAC8532_Out_Voltage(0x30, 3)
DAC.DAC8532_Out_Voltage(0x34, 3)
URL = "http://192.168.1.XX/core/api/jeeApi.php"
API_KEY = "S08znpCn9GPj9ncNHMkKF3YG9BILLP8g"
while(1):
ADC_Value = ADC.ADS1256_GetAll()
DATA={'apikey' : API_KEY , 'type' : 'virtual' , 'id' : '3055', 'value' : (ADC_Value[0]*5.0/0x7fffff) }
response = requests.post(URL, params=DATA)
DATA={'apikey' : API_KEY , 'type' : 'virtual' , 'id' : '3056', 'value' : (ADC_Value[1]*5.0/0x7fffff) }
response = requests.post(URL, params=DATA)
DATA={'apikey' : API_KEY , 'type' : 'virtual' , 'id' : '3057', 'value' : (ADC_Value[2]*5.0/0x7fffff) }
response = requests.post(URL, params=DATA)
DATA={'apikey' : API_KEY , 'type' : 'virtual' , 'id' : '3058', 'value' : (ADC_Value[3]*5.0/0x7fffff) }
response = requests.post(URL, params=DATA)
DATA={'apikey' : API_KEY , 'type' : 'virtual' , 'id' : '3059', 'value' : (ADC_Value[4]*5.0/0x7fffff) }
response = requests.post(URL, params=DATA)
DATA={'apikey' : API_KEY , 'type' : 'virtual' , 'id' : '3060', 'value' : (ADC_Value[5]*5.0/0x7fffff) }
response = requests.post(URL, params=DATA)
DATA={'apikey' : API_KEY , 'type' : 'virtual' , 'id' : '3061', 'value' : (ADC_Value[6]*5.0/0x7fffff) }
response = requests.post(URL, params=DATA)
DATA={'apikey' : API_KEY , 'type' : 'virtual' , 'id' : '3062', 'value' : (ADC_Value[7]*5.0/0x7fffff) }
response = requests.post(URL, params=DATA)
time.sleep(5)
print ("0 ADC = %lf"%(ADC_Value[0]*5.0/0x7fffff))
print ("1 ADC = %lf"%(ADC_Value[1]*5.0/0x7fffff))
print ("2 ADC = %lf"%(ADC_Value[2]*5.0/0x7fffff))
print ("3 ADC = %lf"%(ADC_Value[3]*5.0/0x7fffff))
print ("4 ADC = %lf"%(ADC_Value[4]*5.0/0x7fffff))
print ("5 ADC = %lf"%(ADC_Value[5]*5.0/0x7fffff))
print ("6 ADC = %lf"%(ADC_Value[6]*5.0/0x7fffff))
print ("7 ADC = %lf"%(ADC_Value[7]*5.0/0x7fffff))
temp = (ADC_Value[0]>>7)*5.0/0xffff
print ("DAC :",temp)
print ("\33[10A")
DAC.DAC8532_Out_Voltage(DAC8532.channel_A, temp)
DAC.DAC8532_Out_Voltage(DAC8532.channel_B, 3.3 - temp)
except :
GPIO.cleanup()
print ("\r\nProgram end ")
exit()
Si tu changes les Jumper su rla carte HAT en selecionnant 3.3V a la place de 5V, tu dois le changer dans le code source ." ADC_Value[0]*5.0/0x7fffff "
Le « time.sleep(5) » permet de ne pas trop chargé jeedom avec des valeurs non stop , mais toutes les 5 secondes seulement .
pour le probleme de virgule trop longue =>
pour que la jauge blanche du dashboard soit proportionel a la valeur de 0 a 5 Volt DC =>
Le scripte peut être placé dans n importe quel dossier du RPI. Mais il doit contenir les autres fichiers dans le dossier, à savoir « ADS1256.py » + " config.py" + " DAC8532.py" + « main.py » téléchargeables sur le site du fabriquant waveshare
Pour le démarrage du script eu moment du démarrage du RPI, il faut ajouter une ligne avant " exit "dans le fichier Linux " sudo nano /etc/rc.local
sudo python3 /home/pi/main.py &
si ton scripte « main.py »( le copier coller d ici plus haut ) est dans /home/pi
Control X pour quitter et « O » pour sauvegarder
et rendre exécutable le fichier avec : sudo chmod +x main.py
Autre solution si le scripte ne démarre pas avec la metode precedente => sudo crontab -e et ajouter dans le texte ( la fin par ex ) => @reboot sleep 60 && python /home/pi/main.py
Maintenant, j aimerai faire le même avec une carte d acquisition de courant …