반응형

https://youtube.com/live/5pGM6Ibkm0o

 

[PYTHON#3] python과 arduino 사이에 JSON데이터를 주고받으면서 양방향 제어해보기! (녹칸다의 내맘대로 파이썬)


(주의) 이 내용은 파이썬을 완벽하게 공부해보자는 내용을 담고 있지 않음!
녹칸다의 내맘대로 파이썬(python) 시리즈이다.

자료는 구글 슬라이드로 작성되어있고 모두에게 공유되어있음!
https://docs.google.com/presentation/d/1J8y-oLiYO_Dzunb_P66GOXeE97xQx8zp83tCjW_O8BI/edit#slide=id.g2fd5276bf17_1_0

이번편은 2편에 이어서 python과 아두이노 사이에 연결된 USB선을 이용해서 시리얼통신을 해보도록 한다!
통신이란 것은 2개 이상의 디바이스가 뭔가를 주고받는것인데, 복잡하게 제어를 하려면 할수록 주고받는 데이터 또한 복잡해질 수 밖에 없다!

그렇다면 시작할때부터 이 부분을 고려해서 골격을 잡아두려는게 녹칸다의 목표이다!
가장 합리적인 데이터형식은 JSON인것 같다!

양쪽 디바이스가 JSON데이터를 주고받으면서 통신을 해보는 것이다!
녹칸다가 어떤 생각을 가지고 있는지는 라이브방송에서 함께 알아보도록 하자!

1.파이썬에서 아두이노쪽으로 JSON데이터를 전송하면 아두이노가 JSON데이터를 역직렬화해서 어떻게 데이터를 해석했는지를 파이썬쪽으로 응답하도록 하시오!

ex01.py
0.00MB

 

2.아두이노에 LED 2개를 디지털2번핀과 3번핀에 연결한다음 적절한 JSON커멘드를 생성해서 LED를 개별제어하거나 일괄제어 해보시오!
{"led_num":1,"state":0} //led1번을 OFF해라!
{"led_num":1,"state":1} //led1번은 ON해라!
{"led_num":2,"state":0} //led2번을 OFF해라!
{"led_num":2,"state":1} //led2번은 ON해라!
{"led_num":0,"state":0} //둘다 OFF해라!
{"led_num":0,"state":1} //둘다 ON해라!

ex02.py
0.00MB

 

3.이번에는 반대로 아두이노에서 일정한 간격으로 JSON데이터를 파이썬으로 전송하면 파이썬에서 역직렬화해서 결과를 화면에 출력할 수 있도록 하시오!(1초간격으로 전송함)
{"name":"nockanda","age":20,"gender":"남성"}

ex03.py
0.00MB

 

4.아두이노에 디지털 2번핀에 온습도센서인 DHT-11이 연결되어있을때 온도와습도값을 JSON으로 만들어서 python으로 전송하고 파이썬에서 역직렬화해서 화면에 온도와 습도값을 출력하는 예제를 만드시오!(온습도센서 라이브러리가 필요함 1.3.8버전)

ex04.py
0.00MB

반응형
Posted by 덕력킹
,