Seguidor de línea con un cuadicóptero
Resumen
El proyecto presentado en este documento consiste en la implementaci´on de un cuadric´optero modelo Parrot Bebop 2 como seguidor de l´ınea. La comunicaci´on entre el dispositivo y la computadora que lleva a cabo el algoritmo de control es v´ıa Wi-Fi haciendo uso de la plataforma para el desarrollo de software para robots ROS (Robot Operating System), el cual implementa un modelo de comunicaci´on publicador/subscriptor. Con ayuda del editor de texto Atom un script en lenguaje Python 3.7 fue desarrollado; en este se integran: un algoritmo de control para el pilotaje del cuadric´optero, un modelo de comunicación entre la computadora y el cuadric´optero, una etapa de procesamiento digital de im´agenes y un controlador para un joystick gen´erico, este ´ultimo se utiliza en pruebas de vuelo y como m´etodo para el aterrizaje y despegue del cuadric´optero.
Descargas
Citas
Brandao, A. S., & Soneguetti, H. B. (2015). A vision-based line following strategy for an autonomous UAV. 12th International Conference on Informatics in Control, Automation and Robotics, 2, 317–318. DOI: 10.13140/RG.2.1.1132.2729
Deswal, M., & Sharma, N. (2014). A fast HSV image color and texture detection and image conversion algorithm. International Journal of Science and Research (IJSR), 3, 5.
Espinosa, R. H. (1998). Joystick API documentation. URL: https://www.kernel.org/doc/Documentation/input
Foundation, P. S. (2019). The fcntl and ioctl system calls. URL: https://docs.python.org/2/library/fcntl.html
Meyer, J., Sendobry, A., K. U. K., & von Stryk, O. (2012). Comprehensive simulation of quadrotor UAVs using ROS and Gazebo. Simulation, Modeling, and Programming for Autonomous Robots: Third International Conference, 1, 1. DOI: 10.1007/978-3-642-34327-8_36
Baharuddin, M. Z., Abidin, I. Z., K. M. Y. K. S., & Chuan, J. T. T. (2016). Analysis of line sensor configuration for the advanced line follower robot, 1–2.
Microsoft. (2019). Xbox 360 wired and wireless controllers. URL: https://support.xbox.com/es-EC/xbox-360/
Monajjemi, M. (2015). Bebop autonomy ROS driver for Parrot Bebop drone (Quadrocopter) 1.0 and 2.0. URL: https://bebop-autonomy.readthedocs.io/en/latest/
Nguyen, B. (2004). Linux filesystem hierarchy. URL: https://www.tldp.org/LDP/Linux-Filesystem-Hierarchy/html/index.html
OpenCV. (2014). OpenCV 3.0.0-dev documentation. URL: https://docs.opencv.org/3.0-beta/index.html
OpenCV, ROS. (2017). Converting between ROS images and OpenCV images. URL: http://wiki.ros.org/cv_bridge/Tutorials/
Pakdaman, M., & Sanaatiyan, M. M. (2009). Design and implementation of line follower robot. IEEE, 43, 1–2. DOI: 10.1109/ICCEE.2009.43
Kardasz, P., Doskocz, J., P. W. M. H., & Zarzycki, H. (2016). Drones and possibilities of their using. Journal of Civil & Environmental Engineering, 6, 5–6. DOI: 10.4172/2165-784X.1000233
ROS. (2018). Documentation. URL: http://wiki.ros.org/
SAS, P. D. (2019). Parrot Bebop 2. URL: https://www.parrot.com/us/drones/parrot-bebop-2
Spicy.org. (2019). NumPy. URL: https://numpy.org/
Piskorski, S., Brulez, N., P. E., & D’Haeyer, F. (2012). AR.Drone developer guide. URL: https://jpchanson.github.io/ARdrone/ParrotDevGuide.pdf
Stevens, W. R., & Rudo, A. M. (2004). Addison-Wesley, Boston, MA 02116, USA.
Wiki, R. (2019). ROS/tutorials/writingpublishersubscriber. URL: http://wiki.ros.org/ROS/Tutorials/
YAML. (2001). The official YAML web site. URL: https://yaml.org/