[아두이노/Arduino] Servo Motor Control

일반 DC모터와 달리 특정각도로의 회전이 가능한 서보모터의 기본동작이다. 

0도부터 180도까지 반복적으로 회전되도록 간단한 코드를 주었는데, 시계방향과 반시계방향의 회전속도가 차이를 보인다. 원래 이런것인지는 전문가 분들께 문의를 해봐야 할 것 같다. 


[회로 생략]


[아두이노/Arduino] Arduino + Processing을 이용한 시리얼통신

이번 실습은 아두이노와 프로세싱을 연동하여 회로상의 LED의 밝기값을 조절하는 내용이다. 

회로구성은 가장 기초적인 내용으로 생략해도 될 것 같으며, 프로세싱으로 너비가 255인 스케치를 화면상에 띄워놓고, 마우스의 가로포인터값을 로드하여 스케치의 배경색을 변경해 준다. 그리고 시리얼포트를 이용하여 동일한 마우스 가로포인터값을 출력해준다. 아두이노 프로세스도 동작중이기 때문에 프로세싱에서 출력한 시리얼 값을 전달받아 아날로그값으로 LED 밝기값을 변경해준다.  


[회로생략]


[스크린샷]


[아두이노 소스코드]



[프로세싱 소스코드]



[아두이노/Arduino] Processing을 이용한 Byte 시리얼통신

기존에 실습했던 아스키 코드 한문자를 전달받는것이 아닌, Byte 형태의 코드를 전달받아보자. 


아두이노의 경우 기존 Serial.println()로 시리얼 모니터에 출력했던 부분을

>> Serial.write() 함수를 이용하는 방식으로 교체한다. (알수없는 문자로 출력되는 결과를 얻는다)


프로세싱의 경우 기존 serialPort.readStringUntil(ln) 으로 값을 받아오던 부분을

>> serialPort.read() 함수를 이용하여 보다 우아하게 값을 전달받는다.



[회로부]



[아두이노에서의 Serial.write() 사용]






[프로세싱에서의 serialPort.read() 사용]



[코드의 결과는 기존 실습내용과 동일하게 스케치 배경색상이 변하는 과정을 나타낸다]



[아두이노/Arduino] Processing을 이용한 ASCII 코드 시리얼통신

아두이노와 PC간 시리얼 통신을 위해 그동안에는 Arduino IDE를 이용해 왔다. 

아래는 시리얼통신을 위해 Processing IDE를 사용하는 방법에 대한 실습내용이다. 


실습내용은 포텐쇼미터를 이용해 사용자가 설정한 값을 시리얼통신으로 읽어와 PC화면상의 스테이지 영역의 배경색을 변경해 주는 내용으로 구성되어 있다. 아두이와 PC간 시리얼 통신을 Processing을 통해 실습해본다. 


[회로부]


[아두이노에서의 analogRead() 사용 예]





[프로세싱에서의 readStringUntil() 사용 예]




[아두이노/Arduino] Serial 통신으로 LED 제어

PC와 아두이노를 USB로 연결하고, 시리얼 통신을 이용하여 CHAR값을 전달하여 LED 포트를 제어한다. 

문자 'A' 입력시 포트를 활성화하며, 문자 'D' 입력시 비활성화 처리한다. 



Untitled Sketch.fzz