PROGRAMACIO INICIS

La base de programació en llenguatge C, ens permet de programar fàcilment en PYTHON. Així comencem a definir la estructura del programa del AGV.

Comencem programant els moviments dels motors, i la interfície per al control del moviment.

El control dels motors, es basa en identificar la resposta de cada motor, a una ordre de moviment general per al vehicle. D’aquesta manera, un gir en estàtic només implicarà l’activació d’un dels dos motors, en canvi, avançar o retrocedir implicarà la activació d’ambdós. Cada moviment s’estableix amb el command def dins del qual establirem les activacions corresponents. En el nostre cas 4 pins (motor 1 o 2, sentit de gir esquerra o dret).

def Mov_avan_esq():
GPIO.output(11, False)
GPIO.output(13, False)
GPIO.output(7, True)
GPIO.output(15, False)

La programació de la interfície de control, es basa en crear la interfície, i adaptar-ne la mida a la del dispositiu en que s’hagi de visualitzar. Crear els espais pels botons de cada i disposar-los en la interfície, associar els botons a un espai en l’espai concret i finalment associar la funció de moviment pertinent a cada botó.

contenedor=Tk()
contenedor.title(“Robot Equip 5”)
contenedor.geometry(“800×400”)
contenedor.config(bg=”#793838″)
contenedor.config(bd=10)
contenedor.config(relief=”groove”)

tituloFrame=Frame()
tituloFrame.pack()
tituloFrame.config(bg=”#453034″)
tituloFrame.config(width=”700″,height=”100″)
tituloFrame.config(bd=10)
tituloFrame.config(relief=”groove”)

label = Label(tituloFrame, text=” CONSOLA DE CONTROL “)
label.pack(padx=10,pady=5)

mandos_izq_Frame=Frame()
mandos_izq_Frame.pack(padx=40,pady=20,side=LEFT)
mandos_izq_Frame.config(bg=”#453034″)
mandos_izq_Frame.config(width=”40″,height=”40″)
mandos_izq_Frame.config(bd=10)
mandos_izq_Frame.config(relief=”groove”)

boton_avan_tot = Button(mandos_izq_Frame, padx=100, pady=5, text=”Avan_tot”, command=Mov_avan_tot)
boton_avan_tot.pack(padx=10,pady=10)
boton_avan_izq = Button(mandos_izq_Frame, padx=100, pady=5, text=”Avan_izq”, command=Mov_avan_esq)
boton_avan_izq.pack(padx=10,pady=10)
boton_avan_der = Button(mandos_izq_Frame, padx=100, pady=5, text=”Avan_der”, command=Mov_avan_dre)
boton_avan_der.pack(padx=10,pady=10)

Ara haurem d’aplicar a les connexions físique del vehicle, el pins declarats en el codi. Ens haurem de familiaritzar amb el GPIO de RASPBERRY.


Amb tots els moviments definits, i la interfície acabada, ja podem passar a fer proves de moviment.


Deixa un comentari

Fill in your details below or click an icon to log in:

WordPress.com Logo

Esteu comentant fent servir el compte WordPress.com. Log Out /  Canvia )

Google photo

Esteu comentant fent servir el compte Google. Log Out /  Canvia )

Twitter picture

Esteu comentant fent servir el compte Twitter. Log Out /  Canvia )

Facebook photo

Esteu comentant fent servir el compte Facebook. Log Out /  Canvia )

S'està connectant a %s