로봇/전기전자&메카
프로토타이핑 - 28. USB로 아두이노와 라즈베리파이 직렬 통신
집밖은위험해
2020. 8. 29. 19:59
728x90
링크
- ref : https://roboticsbackend.com/raspberry-pi-arduino-serial-communication/
위 글에서 아두이노와 라즈베리파이를 USB로 연결하여 직렬 통신을 하는 방법을 설명해주고 있습니다
보통 아두이노와 라즈베리파이 간의 통신에 대한 글들은
GPIO를 이용한 I2C 통신에 대해 서술하고 있지만
ref : https://dronebotworkshop.com/i2c-arduino-raspberry-pi/
전압 컨버터가 없어 그냥 USB로 사용하겠습니다.
연결 방법은
아두이노 USB단자를 파이 USB에 연결하면 끝
아두이노 코드
void setup() {
Serial.begin(9600);
}
void loop() {
Serial.println("Hello from Arduino!");
delay(1000);
}
아두이노 포트 확인
- 아두이노가 ttyACM0로 연결되어있내요.
파이썬 시리얼 통신 라이브러리 설치
pip install pyserial
파이썬 코드
#!/usr/bin/env python3
import serial
if __name__ == '__main__':
ser = serial.Serial('/dev/ttyACM0', 9600, timeout=1)
ser.flush()
while True:
if ser.in_waiting > 0:
line = ser.readline().decode('utf-8').rstrip()
print(line)
vim에서는 복붙이 잘안되다보니 nano 에디터로 위 코드를 복붙했습니다.
300x250