å°æã§ã
å æ¥ã®010ã«é¢ãããã£ã¹ã«ãã·ã§ã³ã«ãé¢é£ããã®ã§ããããã£ãžã«ã«ãªUIãæ±ãããã®ã¯ã©ã¹ã詊éšçã«AS3ã©ã€ãã©ãªã«è¿œå ããŠã¿ãŸããã
IAMASå ã§è¡ãAS3ã®ã¯ãŒã¯ã·ã§ããçšã®ãµã³ãã«ãçšæããŠããæãã€ãã£ãªã çã«åºãŠãããã£ã«ã¿ã®äœ¿ãæ¹ãªã©ãé èœããŠããã¡ãã£ãšæœè±¡åºŠããããããªãããªããšãããšããããäœã£ãŠã¿ãŸããã
â»Arduinoçšã®Hardware Abstraction
LibrariesïŒhttp://www.arduino.cc/playground/Code/HardwareAbstractionïŒãããçšåºŠåèã«ããŠããŸãã
ããããã·ã³ãã«ãªãã®ã§ããããã¿ã³ãLEDãšãã£ããã®ãããå°ãé«ãã¬ãã«ã§æ±ããããã«ããŠããã€ããã§ãããŸããGainerã§ãArduinoã§ãåãããã«æ±ããŸãã
http://code.google.com/p/funnel/source/browse/#svn/trunk/libraries/actionscript3/src/funnel/ui
å é床ã»ã³ãµãããé©åã«ã¹ã±ãŒãªã³ã°ããŠsinΞã®å€ãæ±ããŠããããéãµã€ã³ã§ããã«ã©ãžã¢ã³ãã床ã«å€æããšãã£ãäžé£ã®åŠçãå éšçã«è¡ãããã«ããAccelerometerã¯ã©ã¹ãçšæããŠã¿ãŸããã以äžã¯ButtonãšLEDã®äœ¿çšäŸã§ãã
import flash.display.Shape;
import flash.display.Sprite;
import flash.events.Event;
import funnel.*;
import funnel.ui.*;
public class ArduinoTest extends Sprite {
private var aio:Arduino;
public function ArduinoTest() {
var config:Configuration = Arduino.FIRMATA;
config.setDigitalPinMode(12, IN);
config.setDigitalPinMode(13, OUT);
aio = new Arduino(config);
// å¿
èŠã§ããã°ããã§ãœãŒã¹ïŒã·ã³ã¯ãæå®ããïŒããã©ã«ãã¯ãœãŒã¹ïŒ
var led:LED = new LED(aio.digitalPin(13), LED.SOURCE_DRIVE);
// å¿
èŠã§ããã°ããã§ãã«ã¢ããïŒããŠã³ãæå®ããïŒããã©ã«ãã¯ãã«ããŠã³ïŒ
var button:Button = new Button(aio.digitalPin(12), Button.PULL_DOWN);
// ãã¿ã³ãæŒããããšã
button.addEventListener(ButtonEvent.PRESS, function(e:Event):void {
// LEDãéé200msã§2åç¹æ»
led.blink(200, 2);
});
// ãã¿ã³ãé·æŒãããããšã
button.addEventListener(ButtonEvent.LONG_PRESS, function(e:Event):void {
// LEDã®å€ã1000msãããŠ1ã«ã»ãã
led.fadeTo(1, 1000);
});
}
}
ãã®åŸã¯Hããªããžãªã©ã®åºæ¬çãªå
¥åºåãããã€ãçšæãããããªãšæã£ãŠãããŸãã
ã»ããããã®ãå¿
èŠãªã®ã§ã¯
ã»ãããããããªãã®ã¯å¿
èŠãªãã®ã§ã¯
ãªã©ããããæèŠãªã©ããã°ãæ°è»œã«èãããŠããã ããããšæããŸãã:)
> ããŸã«ããããããããªäººãæ¥ãŠããŠäœè£ããããããªãšãã¯æ¥ç¶ã
> GNDã«ããŠã¿ãããVCCã«ããŠã¿ãããšããããã«ïŒãœãŒã¹ãã·ã³ã¯ã®
> èšèã¯äœ¿ããªãã«ããŠãïŒãã£ãŠã¿ãããšããããŸãããããŸã£ããã®
> åå¿è
ã«ãã®èŸºã®ããšãå«ããŠããã«ã¯ããããæéãããã£ãŠããŸããŸãã
> å®éã«ã¯ããã®ãžãã®ããšãããã«ã¯ã©ã®çšåºŠã®æéãããããã®ãªã®ã§ãããïŒ
åå è ã®äººæ°ã«ããããšæããŸããã説æãããããªãã§ç°¡åã«ãã£ãŠã30åãããã¯å€ããããªãšæããŸãããããªãç¥èãè©°ã蟌ã¿ãããã®ãåé¡ã ãšæããŸãã®ã§ãäœè£ã®ãã人ãããšãã調ã¹ããããããªããŒã¯ãŒããè£è¶³ãšããŠè³æãªã©ã«ãããšããã®ããªãšæããŸãã
ãã®ããããã©ããŸã§ãåºç€ç¥èãšããŠç¥ã£ãŠãããŠããããããšèãããã«ããããŸããããæã®ã¯ãŒã¯ã·ã§ããïŒé±ã«2åã§1æããããããŠããæïŒã§ã¯ãã®èŸºããå šéšçã蟌ãã§ããŸãããã確ãã«æéã®ãªãæã«ã¯çç¥ããŠããŸãããšãå€ãã§ãããšã¯ãããäŸãã°ãã«ã«ã©ãŒLEDã説æããããšãããšãã¢ããŒãã³ã¢ã³ãšãã«ãœãŒãã³ã¢ã³ã«è§Šããå¿ èŠãåºãŠããŸãã®ã§ãã©ããã®ã¿ã€ãã³ã°ã§ã¯èª¬æãã¹ãå 容ããªãšã¯æããŸãã
> äž»èŠãªã€ã³ã¿ã©ã¯ã·ã§ã³ã®ããããã£ã¯å€æ°ã«å®çŸ©æžã¿
> ãã³ãã©ãå®çŸ©æžã¿
> 倿°ãšé¢æ°ã§ããçšåºŠã®ããšãã§ãããšããç¹ã§ãã
> ãã®ããããProcessingã®ãããšã³ããªãŒã§ããç¹åŸŽãšèãããš
> ãªããžã§ã¯ãã䜿ãæç¹ã§ãã¯ããšã³ããªãŒã®ããããã¯èããªããŠã
> ããã®ãããšæã£ãŠããŸã£ãŠããŸãã
> ã®ã§ããã£ã¡ãUIã¯ã©ã¹ãå®è£
ããããšæããŸãã
AS3ã䜿ã£ãã¯ãŒã¯ã·ã§ããã®å Žåãæ¢ã«FlashãFlex
Builderã§ã®çµéšãããããšãåæã«ããŠããŸãå Žåãå€ãã®ã§ãããProcessingã䜿ãå Žåã«ã¯ãããããProcessingãåããŠã ã£ãããããã°ã©ãã³ã°ãåããŠããšããå Žåãå€ãã§ãããã
èªåã®å Žåã«ã¯ãJavaã§ã®Hello
Worldã®ããã«ããããªãã¯ã©ã¹ãšããæžããªããã°ãªããªãã®ã§ã¯ãªããprintln()ã ãæžãã°æã®BasicæèŠã§äœ¿ããã®ãããªãå°è±¡çã§ãããããããæå³ã§ãããã¯ããŸããªãã§ãã®ã§ãšããããããæžããŠãã ããããšãã説æãããªããŠã¯ãªããªãå Žé¢ãå°ãªãã®ãProcessingã®ãããšããã ãšæã£ãŠããŸãã
ãªããžã§ã¯ããæ±ãã®ã¯ç¢ºãã«äžã€ã®å€§ããªããŒãã«ã§ãããã説æããªãã§ãããªããããã·ã³ã¿ãã¯ã¹ãç»å Žããã®ãã©ã説æããã®ãïŒããšããç¹ã倧ããªåããéã«ãªããšæããŸãã
ãã®ããããå®äžçã®äŸããæã¡èŸŒãã§èª¬æããããšããæç§æžãå€ãã®ã§ãããããã¯ããã£ãŠçè§£ã劚ããŠããæ°ãããŸããäŸãã°ã§ãããå šãŠé¢æ°ã§æžãæ¹æ³ã§èª¬æããããçšåºŠã®èŠæš¡ã®ãã®ãæ±ãã«ã¯ããã§ã¯äžäŸ¿ã ãšå®æããŠããã£ãäžã§ã¯ã©ã¹ã説æããããšããæ¹æ³ãïŒOOPãç»å Žããèæ¯ãèããŠãïŒèªç¶ã§ããã®ããªãšæã£ãŠããŸãããšã¯ãããããŸãèªå°ããã®ã¯é£ããã®ã§ãã...ã
â»é è€ãããããããŠããã£ããããå šãŠé¢æ°ããŒã¹ã§ããšããã®ã¯ãããŸããªãç¡ãã§èª¬æãããšãããšããã培åºããäžã§éèŠãªã¢ãããŒãã ãšæã£ãŠããŸããããããªæ®µéã¯ããã«ã¯ãªã¢ã§ãããããããšæã£ãŠããŸããšæçŸ©ãããã»ã©æããããªããããããŸããããå®éã®ãšããé åã颿°ã§ã€ãŸããåå¿è ã¯ããªãå€ããšæããŸãã®ã§...ã
> Funnelã¯åå¿è
åããªã®ãïŒãšãããšãåã¯ãéãããšãããããã®ã§ããã
> ãã®ãžãã©ããªãã§ããããïŒ
ãåå¿è ã«äœ¿ããªããããšãããããšãããªããšã¯ãªããšæããŸããããããããšã³ããªãŒããããããããã®ä»çµã¿ã¯æŽãã€ã€ããçã£ãŠããã®ã¯ããããå ã®å®è·µçã«ãããã¿ã€ãã³ã°ããŠãããšãªã¢ããªãšæã£ãŠããŸãã
2009/5/20 takanori endo <sweeta...@gmail.com>: