5/08/2017

Eddibot con palanca y control python

Saludos, 


he estado trabajando ya nuestros Eddiebots les he añadido algunas curiosidades, además del sensor de distancia APDS 9960, le hemos puesto un seguidor de línea y una barra para que se levante del suelo el solo.  En ambos caso los sensores/actuadores que hemos instalado son I2c.




Esta entrada podría ser la continuación de la sensores i2c con pic o una segunda entrada del Intel Edison. Al modelo original de Ediboot le he añadido unos soportes en la parte posterior para que se quede en una posición semi-vertical.




En la parte delantera he instalado una palanca controlada por un motor micrometal de 298: 1 de reducción, más que de sobra para poder desplazar el peso del robot, para controlar el motor he empleado como en otras ocasiones el driver L272M controlado por el pic12lf1840 configurado como esclavo i2c. Podría haber empleado alguno de los pines libres de la placa de GPIO pero no son tantas las que están libres por el uso de la placa de motores y opte por este método que me da más libertad de diseño, reduciendo los problemas a otros más pequeños.


Controlar el motor al fin y al cabo no es mucho más complicado que el control del Led, que explique en el primer ejemplo de i2c, se le puede enviar tres instrucciones:



0x31: Bajar palanca

0x32: Recoger palanca

0x30: Parar Palanca


Al no tener encoder el motor o bien se hacía un control por tiempos, algo que suele descalabrarse, así que opte por colocar un pulsador en el pecho del robótico para que actuara de final de carrera cuando se recoge la palanca.  A la hora de bajarla el limite lo impongo controlando el ángulo del “kalmanfilter”, cuando llegue a cierto ángulo el robot se pondrá de pie solo.





Otro de los sensores que le instalado en el seguidor de línea, en varias versiones, esto quiere decir que he ido modificando como colocar el sensor en función de cuantas cosas llevara el robot.





Al igual que la “pata”, su nombre oficial es otro en la oficina no dejan de reírse con el robot con “pene”, el sensor de línea he empleado el picf1840 para hacer el sensor esclavo i2c. El sistema es cómodo y te permite realizar sensores que se pueden adaptar a cualquier plataforma, Arduino, raspberry pi, Intel edison … 

El aspecto final del sensor que he empleado es:




Placa “home Made” con picf1840, se instala entre los motores del Eddiebot







Otra cosa que debíamos hacer con los Eddibot es que colaborasen entre ellos transportando una plancha o algo similar, haciendo pruebas es algo “relativamente” sencillo de implementar, lo complicado era posicionarlos en una poción concreta para realizar el experimento. 






Para que esto fuera sencillo realice un control mediante Python para poder situar a los robots en la posición correspondiente. No necesita de mucha explicación simplemente cambiar las ip’s para que coincidan con la de vuestros robots y poco más.


Conectarse con los Robots Z
Robot 1 control W,S,A,D
Robot 2 Control I,K,J,L,
Control común T,G,B
Salir X

Anakleto