3D프린터와 아두이노/아두이노

아두이노 스케치 업로드 문제 (신호선 배치 문제 / USB 단자 문제 / IDE 통신속도 설정 문제 / Windows 드라이버 충돌)

메카럽 2020. 9. 2. 10:08

안녕하세요. 메카럽입니다.

이번 포스팅은 지난 포스팅에 이어서 아두이노 스케치 업로드 문제들에 대해 알아보도록 하겠습니다.

여러 가지 문제 중 이번에 다룰 내용은 제목과 같이 신호선 배치, USB단자, IDE통신속도, Windows 드라이버 충돌에 대해 알아볼 예정인데 아두이노를 경험하시면서 도움이 되셨으면 하는 바람입니다.

 

■ 신호선 배치 문제

통신 오류의 예

USB 소켓과 커넥터를 사용하는 아두이노 우노, 나노에서는 발생하지 않는 문제입니다. 프로 미니와 같이 와이어링을 통해서 PC와 연결할 때 신호선 배치를 잘못하면 통신오류가 발생합니다. 위 그림처럼 왼쪽과 같이 배치한 경우는 신호선 배치에 따른 오류 문제가 100%입니다.

신호선은 Tx와 Rx, Rx와 Tx끼리 연결해주고, 접지선도 함께 연결해주어야 합니다. 프로 미니와 PC가 직접 연결되는 경우에는 프로 미니의 5V 단자와 연결해야 합니다(3.3V 단자가 아님을 유의). 이것은 마치 A와 B가 서로 대화하는 과정에서 A가 말하면 (A-Tx) B는 귀로 듣고(B-Rx),B가 말하면(B-Tx) A가 귀로 듣는(A-Rx) 것을 기계적으로 연결해주는 것과 같습니다.

 

■ USB 단자 문제

PC와 아두이노의 USB 단자가 제대로 작동하는지 확인해봅니다. PC의 USB 단자에 USB 메모리를 꽂아서 작동 유무를 점검합니다. 문제가 없다면 아두이노의 USB 단자(또는 신호라인)을 점검합니다. 확률은 낮지만 정전기와 같은 전기적 충격으로 데이터 라인이나 MCU(마이크로 컨트롤러, Micro controller Unit)에 문제가 생겼을 수 있으며, 단자가 닳아 접촉 불량이 발생하는 경우도 있습니다. 이런 경우에는 아예 새로운 아두이노로 교체하여 사용하시길 권장드립니다. 아두이노의 USB 단자보다 PC의 USB 단자에 문제가 생겼을 확률이 조금 더 높은 편이긴 합니다.

 

■ IDE 통신속도 설정 문제

스케치 업로드까지 잘되었는데, 시리얼 모니터에서 결과값이 깨져서 출력되는 경우도 있습니다.

스케치에서 설정된 보드 레이트와 IDE 상의 보드 레이트 통신 속도가 같아야 합니다. 보드 레이트는 통신속도를 의미하는데, 그 단위로 bps(초당 비트수, bit per secound)를 사용합니다. 9600bps라고 하면 1초에 9600비트의 정보를 전송한다는 의미입니다. 만약 스케치에서 시리얼 통신 속도를 9600으로 설정했다면, IDE에서도 동일한 9600으로 설정해야 합니다. 소프트웨어 시리얼 함수를 사용하거나, 센서 등의 속도를 맞추기 위해 통신 속도를 달리하다 보면 발생할 수 있는 문제로, 이런 경우에는 시리얼 모니터로 깨진 상태의 글자가 출력됩니다.

 

■ Windows 드라이버 충돌

PC도 리셋해보고 IDE와 드라이버도 삭제 후 다시 설치해보고, 케이블도 다른 것으로 교체해봐도 안 될 대가 있습니다. 반복적이고 시간 낭비가 심해서 굉장히 짜증 나는 상황입니다. 온갖 방법을 다 동원했지만 안 될 때는, Windows 버전(또는 업데이트 버전)과 드라이버 간 충돌로 인해 제대로 인식되지 않는 경우입니다. 이런 경우 최신 드라이버를 찾거나, 다른 방안을 검토해야 합니다. 만약 CH340 컨버터와 드라이버를 쓰고 있다면 CP2102 또는 PL2303으로 바꿔보시기 바랍니다. 여기까지 왔다면 문제에 대한 스트레스가 엄청날 것인데 그래도 저렴한 호환보드를 사용하는 우리의 숙명이니 받아들이셔야 합니다.

 

이상으로 아두이노 스케치 업로드 문제에 대해 알아보았습니다. 어떤 프로그램이든 문제는 발생합니다. 이 때 어떻게 대처하느냐에 따라 비용이 절감되고 노력과 짜증이 덜 들어가게 됩니다. 많은 경험과 노하우를 습득하려면 그 만큼 많이 경험을 해보셔야 한다는 말씀을 드리며 이만 포스팅을 마무리 하도록 하겠습니다.

오늘 하루도 행복한 하루 되세요.

728x90