Arduino와 Flash연동

안녕하세요.

이번 졸전에 아듀이노와 플래시를 연동하는 작품들이

특히 많은 것 같습니다.

사실 아듀이노와 플래시 연동에서의 어려움은 아듀이노에서

코딩을 하고, 플래시에서 또 아듀이노에서 넘어온 값을

확인하며 일일이 코딩하는 어려움이 크다고 할 수 있습니다.

이전에 전기효과에서 최윤호 학생이 강의한 Serproxy를 이용한

시리얼 통신을 주로 우리 학과 학생들이 쓰는 걸로 알고 있습니다.

제가 이번에 소개하는 방법도  Serproxy를 이용하는 것이지만, 아듀이노에서

코딩은 필요없고, only 플래시에서 코딩하면서 제어하는 것입니다.

제대로 쓴다면 아마 다양한 그래픽 작업물을 플래시에서 할 수 있으리라 기대됩니다.

— 준비물 —-

1. 아듀이노

2. Firmata 2.0 버전

3. 플래시

4. http://code.google.com/p/as3glue/ asGlue라고 하는 것인데

MIT 랩에서 플래시에서 아듀이노를 제어하게끔 가능하게 만든

클래스인 것 같습니다. 여튼 다운받아봅니다.

 5. Serproxy( 위에 클래스 받으면 application 폴더에 있습니다. )

— Process — (  Led 깜빡이기 )

1. 아듀이노의 회로도를 빵판과 함께 구성합니다. ( 13번핀에 Led 살짝 얹습니다. )

2. 아듀이노를 실행시켜서 file -> exampls -> firmata -> standardfirmata 를 실행시켜서

구워줍니다. 이제 아듀이노는 필요없으니 꺼도 됩니다..!

3. Serproxy를 실행시켜서 띄워놓습니다.

4. 플래시를 실행시켜서 코딩을 합니다.

package
{
 import flash.display.Sprite;
 import flash.events.Event;
 import flash.utils.flash_proxy;
 
 import net.eriksjodin.arduino.Arduino;
 import net.eriksjodin.arduino.events.ArduinoEvent;
 import net.eriksjodin.arduino.events.ArduinoSysExEvent;
 
 public class ArduinoTest extends Sprite
 {
  private var arduino : Arduino = new Arduino(“127.0.0.1”, 5331 ); // 5331번은 본인의 port 넘버입니다.
  private var button : int = 1; // 요건 버튼 변수 지정
  private var ledPin:Number = 13; // 핀 번호 지정
  private var frames:Number=0;
  
  public function ArduinoTest()
  {
   super();
   arduino.addEventListener( ArduinoEvent.FIRMWARE_VERSION, onConfirm ); // 아듀이노에 이벤트를 걸어줍니다.
   arduino.requestFirmwareVersion();
  }
  
  private function onConfirm ( e: ArduinoEvent ) : void
  {
   //arduino.setPinMode( button, Arduino.INPUT );
   arduino.writeDigitalPin( ledPin, Arduino.LOW ); // 13번핀에 Low를..
   this.addEventListener( Event.ENTER_FRAME, onEnter ); // 매 프레임마다 이벤트를 걸어줍니다
   trace( “Arduino initialized”);
  }
  private function onEnter ( e: Event ) : void
  {
   frames++; // 매프레임마다 변수 frames 를 1씩 증가합니다.
   if(frames%2==0) { // 만약에 frames 을 2로 나눠서 0이라면..
    arduino.writeDigitalPin(ledPin, Arduino.LOW); // 13번 Led 핀을 끄고
   } else {
    arduino.writeDigitalPin(ledPin, Arduino.HIGH); // 그렇지 않다면 켜라.. 이런식으로 깜빡거리게 됩니다.
   }
  }
 }
}

이건 제가 플래시 빌더에서 한거라..;; 패키지를 쓴 것은 다를수도 있습니다.

저도 blink만 성공한터라…다른 내용은 나중에 성공하는대로 업그레이드 시키겠습니다.

다들 다양한 시도를 해 볼만한 획기적인 방법이라고 생각됩니다~

2010년 졸작 화이팅~!

Advertisements

One Response to “Arduino와 Flash연동”

  1. younghui Says:

    좋은 정보를 올려놓았군요…! 여름방학동안 열심히 아자아자!

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

%s에 연결하는 중


%d 블로거가 이것을 좋아합니다: