Advertisement
Guest User

Untitled

a guest
Feb 6th, 2016
156
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 7.08 KB | None | 0 0
  1. import tkinter as Tk
  2. import RPi.GPIO as GPIO
  3. import time
  4.  
  5. class Manual_Control():
  6. """
  7.    GPIO.setmode(GPIO.BCM)
  8.  
  9.    GPIO.setup(23, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
  10.    GPIO.setup(24, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
  11.  
  12.    GPIO.setup(4, GPIO.OUT)
  13.    GPIO.setup(17, GPIO.OUT)
  14.    GPIO.setup(27, GPIO.OUT)
  15.    #GPIO.setup(22, GPIO.OUT)
  16.    # Da inverse Logik => Ground aktiviert, HIGH deaktiviert
  17.    GPIO.output(4, GPIO.HIGH)
  18.    GPIO.output(17, GPIO.HIGH)
  19.    GPIO.output(27, GPIO.HIGH)
  20.  
  21.  
  22.    def printFunctionL(channel):
  23.        print("Linkes Rad")
  24.        zaehler_links.set(zaehler_links.get()+1)
  25.  
  26.    def printFunctionR(channel):
  27.        print("Rechtes Rad")
  28.        zaehler_rechts.set(zaehler_rechts.get()+1)
  29.  
  30.  
  31.    #GPIO.add_event_detect(23, GPIO.RISING, callback=printFunctionL, bouncetime=200)
  32.    #GPIO.add_event_detect(24, GPIO.RISING, callback=printFunctionR, bouncetime=200)
  33.  
  34.  
  35.    def motorLinksVor():
  36.        if (CheckVarLv.get()==0):
  37.            print("Linker Motor vor aus")
  38.            GPIO.output(4, GPIO.HIGH)
  39.        if (CheckVarLv.get()==1):
  40.            print("Linker Motor vor an")
  41.            GPIO.output(4, GPIO.LOW)
  42.    def motorRechtsVor():
  43.        if (CheckVarRv.get()==0):
  44.            print("Rechter Motor vor aus")
  45.            GPIO.output(17, GPIO.HIGH)
  46.        if (CheckVarRv.get()==1):
  47.            print("Rechter Motor vor an")
  48.            GPIO.output(17, GPIO.LOW)
  49.    def motorLinksZur():
  50.        if (CheckVarLz.get()==0):
  51.            print("Linker Motor zurück aus")
  52.            GPIO.output(27, GPIO.HIGH)
  53.            GPIO.output(4, GPIO.HIGH)
  54.        if (CheckVarLz.get()==1):
  55.            print("Linker Motor zurück an")
  56.            GPIO.output(27, GPIO.LOW)
  57.            GPIO.output(4, GPIO.LOW)
  58.    def motorRechtsZur():
  59.        if (CheckVarRz.get()==0):
  60.            print("Rechter Motor zurück aus")
  61.            GPIO.output(27, GPIO.HIGH)
  62.            GPIO.output(17, GPIO.HIGH)
  63.        if (CheckVarRz.get()==1):
  64.            print("Rechter Motor zurück an")
  65.            GPIO.output(27, GPIO.LOW)
  66.            GPIO.output(17, GPIO.LOW)
  67.    def vorwaerts():
  68.        if (CheckVarVorwaerts.get()==0):
  69.            print("Vorwärts aus")
  70.            GPIO.output(27, GPIO.HIGH)
  71.            GPIO.output(4, GPIO.HIGH)
  72.            GPIO.output(17, GPIO.HIGH)
  73.        if (CheckVarVorwaerts.get()==1):
  74.            print("Vorwärts an")
  75.            GPIO.output(27, GPIO.LOW)
  76.            GPIO.output(4, GPIO.LOW)
  77.            GPIO.output(17, GPIO.LOW)
  78.  
  79.  
  80.    def links():
  81.        print("linkskurve")
  82.        GPIO.output(27, GPIO.LOW)
  83.        GPIO.output(17, GPIO.LOW)
  84.        #100 ms = 0.1
  85.        time.sleep(1)
  86.        
  87.        GPIO.output(17, GPIO.HIGH)
  88.        GPIO.output(27, GPIO.HIGH)
  89.        print("linkskurve ende")
  90.    def rechts():
  91.        print("rechtskurve")
  92.        GPIO.output(27, GPIO.LOW)
  93.        GPIO.output(4, GPIO.LOW)
  94.        #100 ms = 0.1
  95.        time.sleep(1)
  96.        GPIO.output(4, GPIO.HIGH)
  97.        GPIO.output(27, GPIO.HIGH)
  98.    print("rechtskurve ende")
  99.  
  100.    def umdrehung():
  101.        print("umdrehung")
  102.        links = zaehler_links.get()
  103.        rechts = zaehler_rechts.get()
  104.        print("Anzahl Linkerreifen impulse: ", zaehler_links.get())
  105.        print("Anzahl Rechterreifen impulse: ", zaehler_rechts.get())
  106.        GPIO.output(4, GPIO.LOW)
  107.        GPIO.output(17, GPIO.LOW)
  108.        #100 ms = 0.1
  109.        #1 sek = 1
  110.        time.sleep(2)
  111.        GPIO.output(4, GPIO.HIGH)
  112.        GPIO.output(17, GPIO.HIGH)
  113.        print("Anzahl Linkerreifen impulse: ", zaehler_links.get())
  114.        print("Anzahl Rechterreifen impulse: ", zaehler_rechts.get())
  115.        print("Anzahl Links: ", zaehler_links.get()-links)
  116.        print("Anzahl Rechts: ", zaehler_rechts.get()-rechts)
  117.        print("umdrehung ende")
  118.    #Fenster erstellen
  119.  
  120. """      
  121.     mcfenster = tkinter.Tk()
  122.  
  123.  
  124.  
  125.    
  126.     zaehler_links = IntVar()
  127.     zaehler_rechts = IntVar()
  128.     CheckVarLv = IntVar()
  129.     CheckVarRv = IntVar()
  130.     CheckVarLz = IntVar()
  131.     CheckVarRz = IntVar()
  132.     CheckVarVorwaerts = IntVar()
  133.     CheckVarKurveLinks = IntVar()
  134.     CheckVarKurveRechts = IntVar()
  135.     CheckVarVorwaertsUmdrehung = IntVar()
  136.     VorLinks = Checkbutton(mcfenster, text="Links vor", command=motorLinksVor, variable =CheckVarLv, onvalue=1, offvalue=0)
  137.     VorRechts = Checkbutton(mcfenster, text="Rechts vor", command=motorRechtsVor, variable =CheckVarRv, onvalue=1, offvalue=0)
  138.     ZurLinks = Checkbutton(mcfenster, text="Links zurück", command=motorLinksZur, variable =CheckVarLz, onvalue=1, offvalue=0)
  139.     zurRechts = Checkbutton(mcfenster, text="Rechts zurück", command=motorRechtsZur, variable =CheckVarRz, onvalue=1, offvalue=0)
  140.     vorwaerts = Checkbutton(mcfenster, text="vorwaerts", command=vorwaerts, variable =CheckVarVorwaerts, onvalue=1, offvalue=0)
  141.     linkskurve = Checkbutton(mcfenster, text="Linkskurve", command=links, variable =CheckVarKurveLinks, onvalue=1, offvalue=0)
  142.     rechtskurve = Checkbutton(mcfenster, text="Rechtskurve", command=rechts, variable =CheckVarKurveRechts, onvalue=1, offvalue=0)
  143.     vorwaertsumdrehung = Checkbutton(top, text="1 umdrehung vorwaerts", command=umdrehung, variable =CheckVarVorwaertsUmdrehung, onvalue=1, offvalue=0)
  144.  
  145.  
  146.  
  147. class MyApp(object):
  148.     """"""
  149.  
  150.     #----------------------------------------------------------------------
  151.     def __init__(self, parent):
  152.         """Constructor"""
  153.         self.root = parent
  154.         self.root.configure(background='blue')
  155.         self.root.title("Kranken Trage")
  156.  
  157.         self.frame = Tk.Frame(parent,background='blue')
  158.         self.frame.pack()
  159.  
  160.         Uebschrift= Tk.Label(self.frame,text="Kranken-Transport",font = "Verdana 30 bold",fg="red").pack()
  161.  
  162.         btnRooms = Tk.Button(self.frame,text ="Räume")
  163.         btnRooms.config(height=3,width=15,font= "Arial 40")
  164.         btnRooms.pack(pady=5)
  165.        
  166.         Test = Tk.Button(self.frame,text ="Test Modus")
  167.         Test.config(height=3,width=15,font= "Arial 40")
  168.         Test.pack(padx=10,pady=5)
  169.        
  170.         btnmanualControl = Tk.Button(self.frame,text = "Manuele Steuerung",command=openmanualControl)
  171.         btnmanualControl.config(height=3,width=15,font= "Arial 40")
  172.         btnmanualControl.pack(padx=10,pady=5 )
  173.  
  174.     #----------------------------------------------------------------------
  175.     def hide(self):
  176.         """"""
  177.         self.root.withdraw()
  178.  
  179.     #----------------------------------------------------------------------
  180.     def openRooms(self):
  181.         """"""
  182.         self.hide()
  183.         subFrame = Rooms(self)
  184.  
  185.     #----------------------------------------------------------------------
  186.     def openmanualControl(self):
  187.         """"""
  188.         self.hide()
  189.         subFrame = Manual_Control(self)    
  190.  
  191.     #----------------------------------------------------------------------
  192.     def show(self):
  193.         """"""
  194.         self.root.update()
  195.         self.root.deiconify()
  196.  
  197. #----------------------------------------------------------------------
  198. if __name__ == "__main__":
  199.     root = Tk.Tk()
  200.     root.geometry("700x700")
  201.     app = MyApp(root)
  202.     root.mainloop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement