Raspberry Pi spojení skriptů v Pythonu

Mario

Raspberry Pi spojení skriptů v Pythonu
« kdy: 01. 10. 2015, 02:03:28 »
Dobry den

Potreboval by som pomoct s python kodom. Ku raspberry mam pripojeny pir sensor ktomu mam python program. Druhy program ktory mam zistuje stav txt suboru z internetu. Precita 0 alebo 1 a spusti dany script a podobne. Chcel by som tieto dva programi spojit no neviem ako nato. Predstava je taka ak pir senzor zachyti pohyb vypise skontroluje dany txt subor ak vnom bude lock a do 10sekund sa nezmeni na unlock vypise ze bol zaznamenany pohyb ak by sa stav zmenil na ulock ukonci cely program. Vedel by mi niekto poradit? Kludne aj mailom mraz.mario28@gmail.com.

Pir.py
Kód: [Vybrat]
import time
import RPi.GPIO as GPIO

pir_pin = 23
sleeptime = 1

def motion_detected(pir_pin):
    print "Motion Detected!"
def writeInLog(msg):
    with open("log", "a") as f:
        f.write(msg+"\n")

GPIO.setmode(GPIO.BCM)
GPIO.setup(pir_pin, GPIO.IN)

GPIO.add_event_detect(pir_pin, GPIO.RISING, callback=motion_detected)

while True:
    print "Sleeping for %d sec" % sleeptime
    time.sleep(sleeptime)


Readweb.py
Kód: [Vybrat]
#!/usr/bin/python
# -*- encoding: utf-8 -*-

import time                # nacteni systemovych podprogramu pro praci s casem
import urllib2             # cteni souboru umisteneho na internetu


stary_kod = ""

while True:                       # nekonecna smycka

  try:
    # adresa verejne pristupneho souboru "kod.txt" s ridicim prikazem
    response = urllib2.urlopen('http://192.168.1.108/data18.txt')
    novy_kod = response.read()
  except:
    novy_kod= "chyba prenosu"

  print "precteny kod z internetu: " , novy_kod

  stary_kod = novy_kod
  time.sleep(10)     
« Poslední změna: 01. 10. 2015, 06:12:41 od Petr Krčmář »


Pavouk106

  • *****
  • 2 358
    • Zobrazit profil
    • Můj blog
    • E-mail
Re:Raspberry Pi spojení skriptů v Pythonu
« Odpověď #1 kdy: 01. 10. 2015, 09:46:42 »
Pokud to chápu dobře, děláš něco jako alarm. Tedy vlezeš do místnosti a pokud do 10 sekund neproběhne odkódování (změna souboru na internetový adrese z 0 na 1), zahlásí pohyb.

Tak to je docela jednoduchý. Napíšu to vlastníma slovama (pseudokódem), protože Python neznám.

Kód: [Vybrat]
Když zjistíš pohyb, tak
  počkej 10 sekund
  otevři URL a podívej se dovnitř
  pokud je tam 0, tak
    zahlaš "Něco se hýbe"

... zpět na začátek

Všechno, co k tomu potřebuješ, už máš napsaný, stačí to jen dát v tomhle pořadí dohromady.

Důležitý je promyslet, co se stane, když URL nebude dostupná... Má hlásit pohyb nebo ne?