이더넷 제어 로봇팔: 아두이노 101과 WIZ750SR로 원격 제어
부품 및 소모품
| 부품 | 수량 | 비고 |
| 아두이노 101 | 1 | 인텔 퀴리, BLE 내장, USB시리얼과 UART 분리 |
| WIZnet WIZ750SR | 1 | 시리얼-이더넷 모듈, Cortex-M0, TCP 서버 내장 |
| 안드로이드 기기 | 1 | 제어 앱 실행용 |
| 로봇팔 (4자유도) | 1 | 25$ DIY 키트 (뱅굿), 금속 기어 마이크로 서보 4개로 교체 권장 |
| 금속 기어 마이크로 서보 | 4 | 플라스틱 기어보다 빠르고 내구성 좋음 |
앱 및 온라인 서비스
- 아두이노 IDE
- WIZnet S2E Configuration Tool
- 안드로이드 스튜디오
프로젝트 개요
아두이노 101과 WIZ750SR 이더넷 모듈을 이용해 로봇팔을 네트워크로 원격 제어하는 시스템입니다. WIZ750SR의 TCP 서버 기능을 활용하면 아두이노 코드 수정 없이 시리얼 통신만으로 원격 제어가 가능합니다. 안드로이드 앱으로 슬라이더와 버튼을 통해 직관적으로 로봇팔 자세를 제어하고, 움직임 시퀀스(Init/Loop)를 저장/실행할 수 있습니다.
로봇팔 조립
4자유도(3개 관절 + 그리퍼) DIY 키트 조립. 플라스틱 부품이 약해 나사 조임 주의. 그리퍼 서보 케이블 연장 필요. 금속 기어 서보로 교체 권장.
통신 구조
- 아두이노 101: Serial1(D0/D1) ↔ WIZ750SR UART
- WIZ750SR: TCP 서버 모드, 이더넷으로 외부 연결
- 아두이노 USB 시리얼(Serial)은 디버깅용으로 별도 사용 가능
- 전원: 아두이노 USB + 서보용 별도 5V 전원
WIZ750SR 설정 팁
- Configuration Tool로 검색 안 될 때: 평가보드 디버그 USB로 최신 펌웨어 리플래시, VM 네트워크 어댑터 비활성화
- NetCat(
nc [ip] [port])으로 TCP 통신 테스트 유용
제어 프로토콜
아두이노 시리얼로 수신하는 명령어 두 가지:
G 1 → 그리퍼 닫기 (0=열기, 1~3=강도)
A 10 130 120 110 → 관절 각도 설정 (mDelay=10ms, 상부=130°, 하부=120°, 베이스=110°)
경로 계산 알고리즘으로 모든 서보가 동시에 목표 각도에 도달하도록 단계 크기 자동 계산, 부드러운 선형 이동 구현.
안드로이드 제어 앱
- TCP 클라이언트로 WIZ750SR 직접 연결
- Configure 화면: Run / Init / Loop 3탭, 4개 슬라이더(3관절+속도) + 그리퍼 버튼
- 실시간 피드백: 목표 위치(Sent) vs 현재 위치(Received) 표시
- Init → Loop 순서로 실행, Loop는 무한 반복
- 플롯 저장/불러오기, 수동 명령 입력 가능
결과 및 향후 계획
저가 로봇팔임에도 부드럽고 정확한 움직임 구현. 아두이노 101의 4개 PWM 핀 한계로 향후 자유도 확장 시 보드 교체 필요. WIZ750SR은 설정 후 투명하게 동작해 최고 만족도. 안드로이드 앱은 알파 버전으로 기능 확장 예정(함수, 조건문, 인자 있는 루프 등).
코드 및 자료