[Proramming]/Android2011. 10. 3. 13:30

[Android] 이더넷 WiFi모듈을 이용한 서보모터 제어

[Android] 이더넷 WiFi모듈을 이용한 서보모터 제어


Android를 이용한 하드웨어 제어를 위한 두번째 방법으로 이더넷(WiFi) 가 가능하다. Android Phone은 기본적으로 WiFi가 가능하므로 TCP/IP 소켓 프로그래밍을 이용하면 네트웍으로 연결되 장치를 제어 할 수 있다.

Android 에서 TCP/IP을 이용하여 우선 간단하게 테스트 할 수 있는 보드로 WiFi t(Wiz600) 모듈을 이용한다. WiFi AP기능을 하기 때문에 Android에서 접속 해서 무선으로 제어 가능하다.


WiFi to Serial 모듈을 USB2UART 커넥터에 연결하고 Servo Motor를 연결한다.



Android Phone에서 WiFi를 검색하면 WLANAP를 찾을 수 있고 접속할 수 있다.





Android TCP/TP Socket 통신 프로그램 작성




Andoid TC/IP 테스트 동영상

Posted by nexp

댓글을 달아 주세요

  1. 안녕하세요

    서버모터. 혹은 제가 작동하고 싶을때 모터를 움직이고 싶은데요. 제가 서버모터 나 뭐든 잘 모르겠습니다.
    질문이 몇개 있습니다.
    1. 버튼 누를떄마다 잉잉거리는 것이 서버 모터인가요? 아니면 저 메인보드 를 서버모터라고하나요??

    2. 저 제품을 제가 얻고 싶은데 안드로이드용 앱과 서버모터 둘다 어디서 구할 수 있나요?>

    2011.11.22 22:40 [ ADDR : EDIT/ DEL : REPLY ]
    • 위 예제는 RC ServoMotor 입니다.
      출력 펄스의 폭에 따라 모터의 각도가 제어되는 모터 입니다.

      판매용 제품은 아니구요. 테스트용으로 제작해 본 보드 입니다.
      좀더 자세한 사항은 메일 주세요

      2012.07.24 22:52 신고 [ ADDR : EDIT/ DEL ]
  2. 비밀댓글입니다

    2012.07.23 18:54 [ ADDR : EDIT/ DEL : REPLY ]
    • http://nexp.tistory.com/1448 를 보시면 Android에서 TCP통신에 관련된 주의 사항과 예제 소스를 찾을 수 있습니다. 참고 하세요

      2012.07.24 22:49 신고 [ ADDR : EDIT/ DEL ]
  3. ^^

    관리자의 승인을 기다리고 있는 댓글입니다

    2012.08.27 02:04 [ ADDR : EDIT/ DEL : REPLY ]

[MCU]/CANTUS2011. 9. 3. 08:14

[CANTUS EVM] WiFi 모듈 테스트 - 무선랜을 이용한 DAQ (24bit ADC) 테스트

[CANTUS EVM] WiFi 모듈 테스트 - 무선랜을 이용한 DAQ (24bit ADC) 테스트


Serial to WiFi Module (WIZ6100wi)을 이용하여 무선 데이터 수집 장치를 만들어 보았다.
무선랜을 간편하게 사용할 수 있는 WiFi모듈을 이용하면 고속의 데이터를 인터넷으로 손쉽게 수집할 수 있다.

MCU는 저렴하고 RAM이 풍부한 ADChip사의 CANTUS를 이용하고 USB2Serial 커넥터에 WiFi모듈을 연결 하였다.


데이터 수집은 SPI인터페이스의 24비트 ADC모듈을 이용하고 펑션으로 사인파를 입력 하여 테스트 했다.



무선랜 접속
WIZ610은 AP기능이 있어 PC에서 클라이언트 형태로 접속 가능하다. 자세한 환경 설정은 . [WiFi to Serial 모듈 설정]  부분을 참고 한다.

WiFi모듈의 기본 IP는 192.168.1.254 로 접속해서 TCP/IP통신을 하면 MCU쪽에서는 시리얼 형태로 데이터를 수신 할 수 있다. 최대 전소 속도는 1Mbps까지 가능하다.


PC프로그램 작성
무선랜 모듈에 접속하기 위해 TCP/IP프로그램을 작성하면 되는데... 여러 형태로 작성 가능하지만 우선 간단하고 UI 를 쉽게 작성할 수 있는 C#을 이용하였다.


테스트를 위해 간단히 CANTUS EVM의 LED를 On/Off하고 수집한 24bit ADC값을 그래프로 표시하도록 했다.



펌웨어 작성
MCU(CANTUS EVM)쪽 펌웨어는 WiFi모듈을 시리얼로 인식하기 때문에 간단하게 작성할 수 있다.
시리얼 포트로 특정 커멘드를 받으면 동작하도록  처리한다.

  if(U0_IsGetByte())
  {
   switch(U0_GetByte())
   {
    case '2':
     DebugPrint("Led1 Off\r\n");
     Led1Off();
     break;

    case '3':
     DebugPrint("Led1 On\r\n");     
     Led1On();
    break;
    
    case '4':
     DebugPrint("Led2 Off\r\n");
     Led2Off();
     break;

    case '5':
     DebugPrint("Led2 On\r\n");
     Led2On();
    break;
        
    case '6':
     //ADC값 전송 시작
     adc_send_flag ^= 1;
    break; 


ADC값은 타이머 인터럽트를 이용하여 시리얼 포트로 보내면 WiFi로 전송이 된다. 아주 간단하게 WiFi 통신이 가능하다.
  if(adc_send_flag)
  {
   //ADC값 전송
   if(gTimeTick1_1ms>10)
   {
    DebugPrint("ADC=%d\r\n", GetAdc24(0));
    gTimeTick1_1ms = 0;
   }
  }


CANTUS WiFi 테스트 동영상
WiFi를 이용하여 네트웍으로 LED제어하고 24bit ADC데이터 수집 테스트

Posted by nexp

댓글을 달아 주세요

[INTERFACE]/WiFi2010. 7. 30. 18:23

[WiFi] Wiz610wi 테스트 보드 제작 - WiFi 테스트

[WiFi] Wiz610wi 테스트 보드 제작 - WiFi 테스트


Serial2WiFi 모듈 WIZ610을 테스트 하기 위한 보드를 제작 했다. AP기능이 있으므로 PAD폰, iPhone, 안드로이드폰등의 모바일 기기에서 쉽게 접속하여 무선 이더넷이 가능하다.
모듈의 커넥터가 1.27mm 헤더핀이고 안테나도 고정하기 쉽지 않아 일반테스트 하기에 어려움이 있어 쉽게 테스트 할 수 있도록 제작했다.



WIZ610 WiFi 모듈을 TCP서버로 설정하고 TPC포트로 접속하면 데이터를 쉽게 송수신 할수 있다. 서버쪽 모듈에서는 단순히 WiFi로 전송되는 이더넷 데이터를 시리얼로 송수신 할수 있다. 간단히 테스트 할수 있는 TCP클라이언트 프로그램을 C#으로 제작 했다.



WIZ610 WiFi 모듈 테스트
노트북을 이용하여 TCP서버로 구동되고 있는 원격지의 모듈에 접속해서 보드의 LED를 On/Off하는 예제 작성해 보았다.
WiFi모듈은 특성상 전류를 상당히 많이 소비하기 때문에(500mA정도) 대형 니카드 밧데리로 연결해서 테스트 했다.



테스트 동영상


Posted by nexp

댓글을 달아 주세요