Problème avec script lancé par cron
Hello, me revoila avec mon script pour un problème lié avec cron car dès qu'il le lance, le script reste et mémoire et utilise tout le processeur de mon raspberry.
Que dois je faire pour demander dans le script de terminé l'ordre afin qu'il disparaisse des process
un grand merci d'avance
le code
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
| #!/usr/bin/python
#-*- coding: iso-8859-15 -*-
import os,sys,time,commands
import RPi.GPIO as GPIO
from yocto_api import *
from yocto_voltage import *
from yocto_current import *
GPIO.setmode(GPIO.BCM)
GPIO.setup(25, GPIO.OUT)
GPIO.setup(24, GPIO.OUT)
from datetime import datetime
errmsg=YRefParam()
# configure l'api pour utiliser les modules locaux
if YAPI.RegisterHub("127.0.0.1", errmsg)!= YAPI.SUCCESS:
sys.exit("init error"+errmsg.value)
# Trouve la premiere fonction Voltage disponible
Vsensor = YVoltage.FirstVoltage()
if Vsensor is None :
sys.exit('Pas de Yocto-volt trouve (Verifiez le cable USB)')
# retrouve la fonction Voltage pour le courant continu presente
# le meme module en utilisant le Numero de serie, (utiliser
# "voltage2" pour l'alternatif
serial = Vsensor.get_module().get_serialNumber()
Vsensor = YVoltage.FindVoltage(serial+".voltage1")
# Trouve la premiere fonction Current disponible
Csensor = YCurrent.FirstCurrent()
if Csensor is None :
sys.exit('Pas de Yocto-Amp trouve (Verifiez le cable USB)')
# retrouve la fonction Current pour le courant continu presente
# le meme module en utilisant le Numero de serie, (utiliser
# "current2" pour l'alternatif
serial = Csensor.get_module().get_serialNumber()
Csensor = YCurrent.FindCurrent(serial+".current1")
oV=Vsensor.get_currentValue()
oA=Csensor.get_currentValue()
gpio24=commands.getoutput('gpio read 5')
gpio25=commands.getoutput('gpio read 6')
if oV < 12 and gpio25 == 0:
GPIO.output(25,1)
time.sleep(5)
GPIO.output(24,0)
pass
elif oV > 13.5 and gpio25 > 0:
GPIO.output(24,1)
time.sleep(5)
GPIO.output(25,0)
pass
elif oA > 1500 and gpio25 > 0:
GPIO.output(24,1)
time.sleep(5)
GPIO.output(25,0)
pass
else:
pass |