DOI QR코드

DOI QR Code

Implementation of errorless protocol for controlling multiple Arduinos using python via I2C communication

다수의 아두이노를 파이썬과 I2C로 제어하기 위한 무오류 통신 프로토콜 구현

  • Park, Jang-Hyun (Dept. of Electrical and Control Engineering, Mokpo National University) ;
  • Kim, Seong-Hwan (Dept. of Electrical and Control Engineering, Mokpo National University) ;
  • Park, Tae-Sik (Dept. of Electrical and Control Engineering, Mokpo National University)
  • Received : 2017.07.20
  • Accepted : 2017.09.20
  • Published : 2017.09.30

Abstract

Python language is widely used because of its ease of learning and its wide application range. Arduino, on the other hand, is also widely utilized hardware for physical computing and internet of things(IoT). However, Arduino is controlled by $C{^+^+}$ language, which makes it difficult for non-experts to enter swiftly. This paper proposes an errorless protocol that can simultaneously control multiple Arduino devices in a master device using python language with I2C communication. Using the protocol proposed in this paper, we can take advantage of the python language to control multiple Arduinos.

근래에 전 세계적으로 비전공자나 중등학생들에게도 코딩 교육이 폭넓게 이루어지고 있으며 파이썬(python)은 비전문가의 교육용으로도 널리 채택되고 있다. 그리고 아두이노(arduino)는 피지컬 컴퓨팅(physical computing)과 사물인터넷 용도로 사용되는 대중적인 하드웨어이지만 $C{^+^+}$ 언어로 제어되므로 비전문가가 초기에 진입하기에 어려움이 있다. 본 논문은 파이썬 언어와 I2C 통신으로 마스터(master) 기기에서 다수의 아두이노 기기들을 동시에 제어할 수 있는 무오류 프로토콜을 제안한다. 본 논문에서 구현된 프로토콜을 이용하면 다수의 아두이노를 파이썬으로 오류없이 제어할 수 있으므로 아두이노를 제어하는데 파이썬 프로그램의 장점을 활용할 수 있다.

Keywords

References

  1. G. Gardasevic et. al., "The IoT Architectural Framework, Design Issues and Application Domains," Wireless Personal Communications, vol.92, no. 1, pp. 127-148, Jan. 2017. DOI : https://doi.org/10.1007/s11277-016-3842-3
  2. C. G. Garcia, et. al., "A review about Smart Objects, Sensors, and Actuators," International Journal of Interactive Multimedia and Artificial Intelligence, vol. 4, no. 3, pp. 7-10, 2017. DOI : 10.9781/ijimai.2017.431
  3. S. N. Srirama, "Mobile Web and cloud services enabling Internet of Things," CSI trans. on ICT, vol. 5, no. 1, pp. 109-117, 2016. DOI : https://doi.org/10.1007/s40012-016-0139-3
  4. S. Papavlasopoulou, M.N. Giannakos, L. Jaccheri, "Empirical Studies on the Maker Movement, a Promising Approach to Learning: A Literature Review," Entertainment Computing, vol. 18, pp. 57-78, Jan. 2017. DOI : https://doi.org/10.1016/j.entcom.2016.09.002
  5. Arudino organization, "ARDUINO," https://www.arduino.cc/
  6. MASON, Raina, et al. "Introductory Programming Courses in Australasia in 2016," in Proc. of the Nineteenth Australasian Computing Education Conference. ACM, 2017, pp. 81-89. DOI : 10.1145/3013499.3013512
  7. J.-H. Park, S.-H. Kim, "Case Study on Utilizing Arduino in Programming Education of Engineering," J. IKEEE, vol. 19, no. 2, pp. 276-281, 2016. DOI : 10.7471/ikeee.2015.19.2.276
  8. RaspberryPi Foundation, "RASPBERRY PI," https://www.raspberrypi.org
  9. N. Petrov, et. al., "Example of Raspberry Pi usage in Internet of Things," in Proc. of Int. Conf. Applied Internet and Information, 2016, pp. 112-119. DOI : 10.20544/AIIT2016.15
  10. J.-H. Park, "Ardpy", https://github.com/salesiopark/Ardpy