åã®äœæ¥ããæ¥æ²¡ãã«åãããããšããäºå®ã«ãããã¢ã€ãã¢ã¯ããµãŒããŒã®è¿ãã®å€©äºã«èšçœ®ããããã®ã·ã³ãã«ãªããŒã¿ãªãŒïŒ2軞ã®ãã³/ãã«ãïŒWebã«ã¡ã©ãäœæãããšããã¢ã€ãã¢ã«ãªããŸããã 24æéã 圌女ã«äœã圹ã«ç«ã€ããšããããŠãã ããã
æç³»åã§ç©ºæ³ã®é£è¡....
ãããªããæããŠããéããæãåçŽãªããšã¯ããªãã«ã¯è€éã«æããŸããã
ãã€ãã®ããã«ãããã¯ãã¹ãŠæ ããå§ãŸããŸããã æã§ãŠã§ãã«ã¡ã©ãåãããšã¯ãç¹ã«ãã®ããã«æ€ åããåºãå¿ èŠãããå Žåã¯ç¹ã«ãéåžžã«é£ããäœæ¥ã§ããããšãå€æããŸããã æ£åœãªçåãçããŸãã-ãªã圌女ã¯èªåèªèº«ãåããªãã£ãã®ã§ããïŒ ç§ã¯ã«ã¬ã³ããŒããã§ãã¯ããŸãã-ãã¹ãŠã21äžçŽã«åœãŠã¯ãŸããŸããæ¢è£œã®ããŒã¿ãªãŒãŠã§ãã«ã¡ã©ãæ¢ããŠã¿ãŸããããäŸ¡æ Œã«æéãåããŸããã ç§ã¯ãã®äžã«éåžžã«é«äŸ¡ãªãã®ãããããã®ãããªãéããããå¯èœæ§ãããããããæãä»ããªããšèãå§ããŸããã ïŒæ ãšããã¬ãšã«ãšã®éãã¯ãŸã èŠãã®ã§ããïŒç§ã¯äºç®ãèŠç©ããããšããŸããããå¿ èŠãªãã®ãããªãã°ãããäŸ¡æ Œã§è¿ éã«æ§ç¯ã§ããããšãããããŸããã ïŒä»¥åã®è¶£å³ãããžã§ã¯ãã®åŸã«ããåç«ããã©ãã§ã©ã®ãããå®ãæã«å ¥ããããšãã§ããããå€ãã®æ å ±ãæ®ã£ãŠããŸãããå¿ èŠã«å¿ããŠãç§ã¯åžæãã人ãå©ããããšãã§ããŸãããã¹ãŠã¯ãŠã¯ã©ã€ãã§è³Œå ¥ããŸãããïŒ
ãããã£ãŠãã¢ã€ãã¢ã¯åçŽãªãã®ã§ããéåžžã®Webã«ã¡ã©ã䜿çšããŠã2ã€ã®ãµãŒãã®å·§åŠãªã¹ã€ãã«ãã¶ã€ã³ã«æ¥çããŸãã ç§ãã¡ã¯ãè¯ã人ããã§ã«ArduinoããããŒãããŒããŒããã©ãã·ã¥ããAtmega8ïŒãã€ã¯ãã³ã³ãããŒã©ãŒïŒã§ãµãŒããå¶åŸ¡ããŸãïŒããããªããã°ãããã¯ãããŸããïŒã ãã€ã¯ãã³ã³ãããŒã©ãŒã¯ã³ã³ãã¥ãŒã¿ãŒããã³ãã³ããåãåãããµãŒããä»ããŠã«ã¡ã©ãå転ãããŸãã ãã³ã³ãã¥ãŒã¿ã®COMããŒããèŠã€ããããšããé åçãªæ¢æ±ãçµãªãããã«ãããã«USBçµç±ã§ãã€ã¯ãã³ã³ãããŒã©ãæ¥ç¶ããŸãããUSBããã°ã©ã ãšãã¥ã¬ãŒã·ã§ã³ãããã«ãã€ã¯ãã³ã³ãããŒã©ã«ã¢ããããŒãããã®ã¯ããã»ã©ã¯ãŒã«ã§ã¯ãªããããpl2303ã«åºã¥ããUSBtoUARTã³ã³ããŒã¿ã䜿çšããŸãããããããããã§ã«ç®±ãããããããçš®é¡ã®Linuxãç°è°ã®ããä¿è²åããããŸãã
å§ããåã®å°ããªäœè«ïŒ
1.ç§ã¯ãã€ãååã«å°ãããŠããã®ã§ããã¹ãŠã¯ãã€ããšãŠãäžåšçšã«èŠããŸã-ãå°ãªããšãäœããã®åœ¢ã§æ©èœãããŸãããä»ã¯ãã€ãŠãªãã»ã©ã§ããã çµæã衚瀺ãããªãå Žåãããã«èå³ã倱ãããããžã§ã¯ãã¯ç§ãããããããšã§ã¯ãªããè² æ ã«ãªããŸãã ããããçŸåšã®ãããžã§ã¯ããæ¬åœã«äŸ¿å©ãªå Žåãããªãã¡ã¯ã¿ãªã³ã°ããDIYã§åŒã°ãããã®ãåŸã ã«è¡ãããšããéããããšã¯ã§ããŸããã äžè¬çã«ãèªå·±æ¬ºceptionã¯æ³šæãèŠãããã®ã§ãããæã«ã¯ãããããŸãå©çšããããšããã§ããŸãã
2.äžéšã®åçã¯åºå€§ãªã€ã³ã¿ãŒãããããåçšãããŠããããã決ããŠãããã®ãµãããããã§ããã ããã¹ãŠãæ確ã«ç€ºãããã«äœ¿çšããŠãã ããã
3.æåŸã«ãã1ã€ã äžåŠæ ¡ã«å ¥åŠãããã·ã¢äººã®å çã¯ççŽã«èšã£ãŠãç§ã«èªã¿æžãèœåãæããã®ã¯æéã®ç¡é§ã ãšèšã£ãïŒãã ã®æããªãã€ã³ã¿ïŒã ãããŠãããã¯éåžžã«è³¢æãªæ±ºæã§ãããç§ã¯ãããå šé¢çã«æ¯æããŸãã ãããã£ãŠãäžå¹³çãªæŠãã§ãæ°ãåªããŠããæµãšãææ³ãå¥èªç¹ã綎ãã®ããã«ç¡ç§ç¡æ¬²ã«æŠã人ã ã¯ãPMã§ç§ã®å倧ã§åŒ·åãªç§ã®ç¡ç¥ãªèåŸ ã«ã€ããŠç§ã«æžãããšãã§ããŸããç§ã¯æ¯é ããŸãã ããããã³ã¡ã³ãã§ããªãŠãããç¹æ®ãããªãã§ãã ããïŒ
æ§æéšå
1.ãŠã§ãã«ã¡ã©-$ 4
2.ãã€ã¯ãã³ã³ãããŒã©ãŒAtmega8 +é¢é£-$ 3
3. USBãã-3ãã«ãã
4.ãµãŒã-7ãã«
5. USBtoUART-$ 2-3
6.æ¯èŒççŽæ¥çãªæãšçŽç²ãªçç±-æ®å¿µãªããããããã貎éã§ãã
åœç¶ã®ããšãªãããäŸ¡æ Œã¯ããããã§ãããå°çç座æšããã³ããªãŒã®æ·±ãããèªèº«ã®æºåéããŸãã¯åå¿ã®ååšã«åŒ·ãäŸåããŸãã
ã ãããç§ãã¡ã¯xãããridgeã調çãå§ããŸãã
1.ãµãŒãã
ãµãŒãã¯180床å転ã§ããŸãããå®éã«ã¯å°ãå°ãããªããŸãã ïŒããã¯ãã«ã¡ã©ãæ°Žå¹³æ¹åã«0ã360床移åãããšãã«2çªç®ã®ãããªã§ç¢ºèªã§ããŸããïŒãå転ãããéšåã®ééã«åºã¥ããŠãµãŒããéžæããŸãã ïŒ
å®éããããã¯ç§ãæã£ãŠãããµãŒãã§ãã
ã«ã¡ã©ã倩äºã®äžã«èšçœ®ãããšã2ã€ã®ãµãŒããäžåçãã»ãŒå®å šã«èŠãããšãã§ããŸãïŒ
ãã€ãã®ããã«ãç§ã¯ãã¹ãŠãä»ããåããããã£ãã®ã§ãç§ã¯é·ãææ ®æ·±ããã¶ã€ã³ããã¹ã¿ãŒããŸããã§ãããç§ã¯å£ããéå±ã¹ããªããïŒPCã·ã¹ãã ãŠãããã®æ¡åŒµã«ãŒãã®æšæºã¹ãããããã®ãã©ã°ïŒãåããæå°éã®å¿ èŠãªããŠã³ããæ§ç¯ããŸããã 次ã«ãåãã¿ã€ãã®2ã€ç®ã®ãã©ã°ã䜿çšããŠãWebã«ã¡ã©ãæ¢ã«ãã£ã€ãéšåãæ§ç¯ããŸããã 誰ãããã®ãããªã¹ã¿ããæã£ãŠãããšæããŸãããããªãã¯å€ã«ããããã©ãã«çœ®ãã¹ãããšãã匷迫芳念ããç ããŸããã§ããã
ããã¯èŠãç®ã§ãã ïŒãã«ã«èŠããŸãããåäœããŸããïŒ
2.ãŠã§ãã«ã¡ã©ã
ããã¯ç¹å¥ãªãããã¯ã§ãã æåã¯éåžžã®Webã«ã¡ã©ã䜿çšããããšãèããŠããŸãããããã®åŸéåžžã«åªããã¢ã€ãã¢ã蚪ããŸããããã®åŸãäºç®ãå€§å¹ ã«ä¿é²ããããã¶ã€ã³ãç°¡çŽ åãããŸããã 楜ãã¿ã®ããã«ãæ»ãã ã©ãããããããæ¡æãããUSBãŠã§ãã«ã¡ã©ã«æ¥ç¶ããããšããããŸãã ç§ã¯ã©ãããããã®ãŠã§ãã«ã¡ã©ã®äŸ¡æ ŒãèŠãŠãããããéåžžãããã£ãšå®ãããšãå€æãããšããããªãé©ããã ã©ãããå šäœã®ãã€ã³ãã¯ããããã©ãããããçšã®éåžžã«å®è¡ãããŠããã¹ãã¢ããŒãã§ã¯ãªãããããã®äŸ¡æ ŒãåŒãäžããããšãã§ããªããšããããšã§ãã ãããŠããããã¯å®å šã«éèªæãªæ¹æ³ã§PCã«æ¥ç¶ãããŸãã
æ£ä¹±ãŠã§ãã«ã¡ã©
ãã¹ãŠã®ã©ãããããã«ã¡ã©ãUSBã§æ¥ç¶ãããŠããããšãå®å šã«èªä¿¡ãæã£ãŠèšãããšã¯ã§ããŸããããè³Œå ¥ãã4ã€ã®ãã¡3ã€ãäžåºŠã«ç²åŸããŸããã ïŒãã®ãããã¯ã«é¢ããæ å ±ããæã¡ã®æ¹ã¯ãå ±æããŠãã ãããïŒ
ããã€ãã®ã«ã¡ã©ã¯5ã§ã¯ãªã3.3ãã«ããã絊é»ãããŠããããã«èŠãããšããå¥ã®ãã€ã³ãããããŸãã äœããã®æ¹æ³ã§ããããæ¥ç¶ããŸããã1å°ã®ã«ã¡ã©ãç®ã«èŠããçµæãªãã«å°ãªããšã1幎é5ãã«ãã§åäœããŸããã æ®ãã¯ãã¹ãŠ5ãããæ©èœããŠããŸãããããŸã æéããããŠãããã確èªã§ããŸããã§ããã é»æºåè·¯ã§1ã2åã®ãã€ãªãŒãããªã³ã«ããã ãã§ããã®ãããªäžæçãªæ¹æ³ã§é»å§ãäžããŸããã 以äžã®ã©ãããããWebã«ã¡ã©ã®ãã³é 眮ã åå°ã¯éåžžã鳎ããããšã¯åé¡ã§ã¯ãªãããã§ã«ããããèžã£ãŠããŸãã
ã©ãããããWebã«ã¡ã©ã®ãã³é 眮ã
ç§ã䜿çšããã«ã¡ã©ã§ãéèŠãªã®ã¯ãäœçœ®ã»ã³ãµãŒã§ãããç»åã¯ããèªäœã§ã²ã£ããè¿ãããŸãããããã¯ããã°ã©ã ã§è¡ãããšãã§ããŸãããããèªäœã§æ©èœããå Žåã¯åã°ããŸãã ä»ã®ãŠã§ãã«ã¡ã©ã§ã¯ããã®ç®çã®ããã«ãã¹ã€ããçšã®æ©æ¢°çãªãã§ãã¯ããã¯ã¹ãæäŸãããŠããããããã䜿çšããããšãé£ãããããŸããã
ãã§ãã¯ããã¯ã¹ã¯ãç»åã180床å転ããŸãã
ãããŠãã¡ããããã®ãããªãŠã§ãã«ã¡ã©èªäœã®ãµã€ãºã¯ãã©ã¹ã§ãã ïŒ
ã«ã¡ã©ã®å¯žæ³ã
ããªããã©ããããããããŠã§ãã«ã¡ã©ã䜿çšããŠè¡ãå Žåãç§ã¯èªåã§äœ¿çšãããŠã§ãã«ã¡ã©ã®ãªã¹ããæäŸãããã§ã«Linuxãšã®äºææ§ã®ããã€ãã®ãã€ã³ãããã§ãã¯ããŠããŸãã ããã¯ãå°æ¥mjpeg_streamerã䜿çšããäºå®ãããå Žåã«éèŠã§ãã ããšãã°ãã«ã¡ã©ã¯äœ¿çšããããã®ãšã»ãŒåãã§ãããä»ã®ã¢ãã«ïŒ174fïŒ 6 a31ïŒã¯ãfireãå人çã«ã³ã³ãã€ã«ããå Žåã§ããLinuxã§ã®ç»åã®æäŸãæã¿ãŸããã§ããã æ®ãã®ã«ã¡ã©ã¯ã¿ã³ããªã³ãšã®ãã³ã¹ãå¿ èŠãšããŸããã§ããã
-Acer TravelMate 3020ã·ãªãŒãºã®ã«ã¡ã©ïŒUVC + JPEG-ïŒ
P / NïŒ57.TCYV7.001 USB \ VID_046DïŒPID_0896ïŒREV_0100 |
-LogitechïŒUVC + JPEG- WIN +ïŒ
Logitech 1.3 M Acer Aspire 9410 9420ã«ã¡ã© Logitech 1.3 M Acer Aspire 9410 9420 TravelMateïŒ5620ã·ãªãŒãºã«ã¡ã© P / NïŒ57.AWZ01.001 USB \ VID_046DïŒPID_09B0ïŒREV_0006ïŒMI_00 |
-NettopCameraïŒUVC + JPEG-ïŒ
5986ïŒ0241 |
-å€ãAsus F8sãF5RLã©ãããããã®ã«ã¡ã©ïŒUVC + JPEG-ïŒ
174fïŒ5a31 ããã¯ç§ã䜿çšããã«ã¡ã©ã§ãã |
ã¡ã¢ã®èª¬æïŒ
UVC -UVCã¯ç¹å®ã®ã«ã¡ã©ããµããŒãããŠããŸããïŒ ä»¥äžã¯ UVCã«ã¡ã©ã®ãªã¹ãã§ãïŒ
JPEG -Webã¹ããªãŒã ããŒããŠã§ã¢å§çž®ãµããŒã
WIN -Windows 7èªäœã§ã«ã¡ã©ãèµ·åãããã©ããïŒsoèªäœãæ¢ãåããªãããã«ããããïŒ
åœç¶ãã©ãããããã«ã¡ã©ã¯ã©ãããããã¢ãã«ã§ã®ã¿è²©å£²ãããå¯èœæ§ãé«ããããã ãã§ãã ãããã£ãŠãç¹å®ã®ã©ãããããã«ã€ã³ã¹ããŒã«ãããŠããWebã«ã¡ã©ã®çš®é¡ãããŒãã«ãgoogleããéžæããLinuxãšã®äºææ§ã«é¢ããæ å ±ãèŠã€ããããšããŸããã æ å ±ã®ã»ãšãã©ã¯ãã©ãããããã¡ãŒã«ãŒã®ãŠã§ããµã€ãã®ãã©ã€ããŒã»ã¯ã·ã§ã³ã«ãããŸãã Windowsã§ã¯ãéåžžãfireã¯åé¡ã«ãªããŸããã æè¿ã®Linuxã«ãŒãã«ã§ã¯ãç¹å®ã®Webã«ã¡ã©çšã®ãã©ã€ããŒãçšæããããšãéèŠã§ããã
3. USB-UARTã³ã³ããŒã¿ãŒã
çŸåšãæ¢è£œã®ã³ã³ããŒã¿ãŒã¢ãžã¥ãŒã«ã販売ãããŠããŸãããäžæ¹ã§ã¯USBãããäžæ¹ã§ã¯UARTã®ãæ«ãã§ãã ãããã¯ç°ãªããã€ã¯ãåè·¯ã§äœãããŠããŸãããã»ãšãã©ã®å®äŸ¡ãªé»åæ©åšã§èŠããããããªäžåœã®ãããããã°ããããããã°ã§ã¯ãªãããã€ã¯ãåè·¯ãå èµããããšãæåã§ãã æãå®ãã®ã¯pl2303ãããã§ãã ãã ããããªãã¯ããããŸããããšãã°ãSamsung C100ãŸãã¯Siemens C55ã®ã±ãŒãã«ã¯åãã³ã³ããŒã¿ãŒã§ãããããå®ããå€ãã®å Žåã¯pl2303ãããããŸãã ããã¢ã®æåãªDCU-5ã±ãŒãã«ã䜿çšã§ããŸããããããã¯ããç¥ãããŠãããäŸ¡æ Œãé«ããªã£ãŠããŸãã
ããããç§ãã¡ãèå³ãæã£ãŠããæ®éã®é»è©±ã¹ãã©ããã®å€èŠ³ã§ãã ãããŠãpl2303ãããã®ãã³é å
ãã®ãããªã¬ãŒã¹ããåãå€ãããå žåçãªããŒã
ãã ãããã®ãããªããŒãã¯å¥å£²ãã§ãã
å®éãããããUSBåºåãæããªãããããã§ãUSBçµç±ã§PCã«æ¥ç¶ãããŠããé»è©±çšã®ã±ãŒãã«ã¯ãåæ§ã®ã³ã³ããŒã¿ãŒã§ãã å€ããå°ãªããããç¥ãããŠãããã¹ãŠã®è¶ å°ååè·¯çšã®ãã©ã€ããŒã¯ãéåžžãã»ãšãã©ãã¹ãŠã®ææ°ã®ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã«æ¢ã«ååšããŸãã ã³ã³ããŒã¿ãŒãæ¥ç¶ããã·ã¹ãã ã«COMããŒããããå Žåããã©ã€ããŒããããŸãã 次ã«ãRXãšTXã®é£çµ¡å ãéããŠãéåžžã®ç«¯æ«ã§äœãã転éããŠã¿ãŸãã åçãéä¿¡ããããã®ã§ããå Žåããã¹ãŠãæ©èœããå ã«é²ãããšãã§ããŸãã Herculesããã°ã©ã ã䜿çšã§ããŸãããå¶ç¶èŠã€ãããã®ã§ãéåžžã«æçšã§ããããšãå€æããŸãããããŸã£ããå¥ã®ãã®ã察象ãšããŠããŸãã
éžæè¢ãããå Žåã¯ãã³ã³ããŒã¿ããŒããäžå€®ã«ãããç°¡åã«åãå€ãããšãã§ããé»è©±ã±ãŒãã«ã§åæ¢ããããšããå§ãããŸãã ããã«ããã®çç±ã¯æããã§ãã ãŸãããŠã§ããžã©ã€ãã¯pl2303ã«åæãããããšãã°FTDIãŸãã¯CP2101ãããäžã«ã¢ããã¿ãŒããããŸãããããé«äŸ¡ã§æ·±å»ãªã®ã§ãä»ã®ã¢ããªã±ãŒã·ã§ã³çšã«ä¿åããããšããå§ãããŸãã
4. USBããã
ããªãã¯ããããèããŸã-ãªã圌ã¯ããã«ããã®ã§ããïŒ ã·ã³ãã«ã§ã-è€æ°ã®ã±ãŒãã«ã®ä»£ããã«1æ¬ã®ã±ãŒãã«ã䜿çšããŠãæçµçãªã«ã¡ã©ãšPCã®æ¥ç¶ãéåžžã«ç°¡åã«æŽçã§ããŸããããã«ã¯ãŸã 空ãããŒãããããããã«äœã§ãæ¥ç¶ã§ããŸãã å®äŸ¡ãªãããå¿ èŠã§ãããããŒãžã§ã³2.0ãä¿èšŒãããŠããŸãã ãããã£ãŠããã¹ãããããšããå§ãããŸãã ããã¯ãããšãã°ãUSBãã©ãã·ã¥ãã©ã€ããããã¡ã€ã«ãã³ããŒããã³ããŒã®é床ã«ãã£ãŠããã®ããŒãžã§ã³ã決å®ããããWebã«ã¡ã©ãæ¥ç¶ããããšã§å®è¡ã§ããŸãã ãã¡ããããã€ã¹ãããŒãžã£ãŒãèŠãããšãã§ããŸãããbutãªäžåœäººã¯ããã«ãããã¹ãŠãé ãããšãã§ããŸãã ç§ã¯æãäžè¬çãªããã®1ã€ã䜿çšãã1ã€ã¯ãã«ã¡ã©ã«åãä»ãããããµãŒããã©ã€ããåãä»ããããã®åºç€ãšããŠäœ¿çšããŸããã ïŒ4ã€ã®åªããéè²LEDãšé¡é¢ãããèªäœããæœåºãããããã圌ã¯ããå¿ èŠãããŸããã§ãããïŒ
ãã
圌ãã¯ããã«ã³ã³ãã³ãµãèšçœ®ããã®ãå¿ããŠããŸãããããããã®å Žæã¯æ確ã«åºå¥ã§ããŸãããããŠç§ãã¡ã¯ãµãŒããæã£ãŠããã®ã§ãã»ãšãã©ã®å Žååäœãé»å§ãæåºããã®ã§ãã³ã³ãã³ãµãspareããŸãªãæ¹ãè¯ãã§ãã åäœé»å§ã6ãã«ã以äžã§ããã°åé¡ãããŸããã 容éãããŸã倧ããããªãã§ãã ãããæ¯èŠªã®USBã³ã³ãããŒã©ãŒã¯ã倧é»æµã§å€§å®¹éãå é»ããŠãããšãã«ç絡ãçºçãããšå€æããDIYã§ããªããå°çã«éã£ãŠããŸãã®ã§ã¯ãªãããšæããŸãã
ããã«ã¯ãã§ã«ã³ã³ãã³ãµãšpl2303ãæèŒãããŠããŸã
ã»ãšãã©ã®å ŽåãFE1.1sãããäžã®ããã«åºããããŸãã ããã¯éåžžã®ãã€ã¯ããµãŒãããã®ããã«æããŸãããç§ã¯ããã§æ²ããçµéšãããŸããã Raspberry Pi rev.Aã®USBããŒãã®æ°ãå¢ãããŸããããã©ãºããªãŒãåžžã«ã¶ãäžãã£ãŠããçç±ãé·ãéç解ã§ããŸããã§ãããããããã¶ãäžãã£ãŠããããšãããããŸããã ãã®ãããç¹å®ã®ããã䜿çšããåã«ãç¹å®ã®ã€ã³ã¹ã¿ã³ã¹ãå®å®ããŠåäœããŠããããšã確èªããããã«ã10ãã20ã®ã¬ãã€ããç¶ç¶çã«ãã©ã€ãããŠãã ããã ããã§ãªãå Žåã¯ãäŸçµŠé»å§ã5ãã«ããã3.3ãã«ãã«äžããŠã¿ãŠãã ããããã®ãããªæ°å€ããããŸãã
éç©åè·¯FE1.1ã
USBtoUARTã³ã³ããŒã¿ãããã®ããŒãã®1ã€ã«ã¯ãã ä»ãããUSBã³ãã¯ã¿ãé©åã«ã¯ãã ä»ãããŠãå¥ã®ããã€ã¹ã誀ã£ãŠæ¥ç¶ã§ããªãããã«ããŸãã ããã«ãã³ã³ããŒã¿ã¯ããããŠãžã³ã°ã«é ãããšãã§ããRXãTXãããã³DTRã®3æ¬ã®ã¯ã€ã€ã®ã¿ãåŒãåºãããšãã§ããŸãã ããããŒãèªäœããã2æ¬ã®é»æºç·ãåºåããããšãã§ããããããã€ã¯ãã³ã³ãããŒã©ãŒã§ããŒãã«ã¯ãã ä»ãããŸãã
5.ãã€ã¯ãã³ã³ãããŒã©ãŒã
ããã¯æãèšå€§ãªäœæ¥é åã§ãããèå³æ·±ãã§ãã ã³ã³ããŒã¿ãŒã䜿ãããªãããã€ã¯ãã³ã³ãããŒã©ãŒèªäœãæ¥ç¶ããããªãå Žåã¯ãå®æããArduinoãã€ã¯ãã«ãŒãã®1ã€ãçŽæ¥USBåºåã«çŽæ¥æ¥ç¶ããããšãã§ããŸãããããé«äŸ¡ã«ãªãããšã¯ãèªèº«ã§ç解ã§ããŸãã ãããŠããã®ãããªããŒããããã«æ°žä¹ ã«åããããšã¯æ®å¿µã§ãã
ãããããArduinoããŒãããŒããŒãåããAtmega8æå°ãã€ã¯ãã³ã³ãããŒã©ãŒã䜿çšããã¯ã€ã€ãŒãšã³ã³ãã³ãµãŒãšé»æºã2ã3å䜿çšããã ãã§ãã¹ã±ããã§çž«ãä»ãããããã€ãªãŒãã§ç¹æ» ããïŒãã¡ããã¯ãã ä»ãããªãéãïŒå¥åŠãªãã¶ã€ã³ãåŸãããããšã誰ããç¥ã£ãŠãããšã¯éããŸããã ã€ãŸããè¶ è»œéã§è¶ 軜éã®Arduinoãæã«å ¥ããŸãã
Atmega8ã®æå°Arduino
ãã®åçã¯ããã€ã¯ãã³ã³ãããŒã©ã¯é£ãããšæããå§ããã®ãæã人ã®ããã«ç¹å¥ã«åŒçšãããŸããã ããã¥ã¢ã«ã®éå°ãªäœæ¥è² è·ã¯ãã°ãã°äººã ãæãããã圌ããäœããå§ããããšã決å®ã§ããªãããã«ããŸãã å Žåã«ãã£ãŠã¯ãããã€ãã®ãã€ã³ããçç¥ããŠããã®äººã«æççµè·¯ã瀺ãã ãã§éåžžã«äŸ¿å©ã§ãã ãã¬ã€äžã«åœŒããã¹ã¿ãŒããæ©èœã
ç§èªèº«ãäœåºŠããã®æ¹æ³ã§æ è¡ããŸããããä»ã§ã¯æ瀺ãéåžžã«ã倧éãã§ããå Žåãç§ã¯ããã«ãããŒã®ããã«äœããæ¢ããŠããŸãã ïŒããã¯ããããç§ãã¡ã®æè²ã®æãåºæ¬çãªãã€ãã¹ã§ããïŒ
ãã¥ãŒããªã¢ã«å šäœã®èŠªæãªãèè ã1ã€ã®åçŽãªããšãç解ããŠãã ãã-äœããåŠãã§ãã人ã圌ã¯ãŸã ãããç¥ããªãã®ã§ãããåŠãã§ããããã§ãã ã¿ã€ãã®åŠçããç空äžã®çäœãã®åºæ¬çãªç¥èãæã£ãŠããå¿ èŠããããšããäºå®ã«äŸåããã®ã§ã¯ãªãããã¹ãŠãã§ããã ãã·ã³ãã«ã«æ瀺ããããšãå¿ èŠã§ãã
ãèªè ã«å¯Ÿããæé«ã®æ¬æã¯ã圌ãããã«ã ãšèããããšã§ããã
äžåºŠãã®åŒçšã殺å°ããã èªè ã銬鹿ã ãšããããšã§ã¯ãªãããšãç解ãã¹ãã§ãã ããã¯ãããªããããªãã®ããã¥ã¢ã«ã§ã°ããèšç·Žããããšãã§ãããªãã°ãç®æšãéæãããããšãæå³ããŸãã
ãã®èšäºã®ãã¬ãŒã ã¯ãŒã¯ã§ã¯ãArduinoããŒãããŒããŒããã€ã¯ãã³ã³ãããŒã©ãŒã«é 眮ããæ¹æ³ã«ã€ããŠã¯æ€èšããŸããããããã¯ãŸã£ããé£ãããªããæå°éã®æ©åšïŒLPTããŒãã®ååšïŒã§è¡ãããããšã«æ³šæããŠãã ããã ãããããã®åŸããã®ã¢ãããŒãã¯åžžã«ææãäžããŸãã GoogleããæäŒãããŸãã
äžè¬çã«ãArduinoããŒãããŒããŒãã¹ããããããAtmega8ããããŸãã ä»ã§ã¯ã圌ã¯ã¹ã±ããã®æ¹æ³ãç¥ã£ãŠããããã¡ãã·ã§ããã«ãªArduinoã¹ã±ãããæžãããã«ç§ãã¡ãæã£ãŠãããã€ã¯ãã³ã³ãããŒã©ãŒã®ãã¹ãŠã®äœæ¥ãç解ããŠããŸãã ãã€ã¯ãã³ã³ãããŒã©ãŒã§ã¯ã2ã€ã®åºåã®ã¿ã䜿çšããŸããä»ã®ãã¹ãŠãèªç±ã«äœ¿çšã§ããŸãã ã»ã³ãµãŒãã«ã¡ã©ã«ã¶ãäžããŠãåé¡ã¯ãããŸããã åãä»ããç°¡åã«ããããã«ãç©Žã®ãããã¬ããããŒããåããããã«ãã€ã¯ãã³ã³ãããŒã©ãŒããã£ãããšã¯ãã ä»ãããã®ãæåã§ãïŒãã£ãããšã§ã¯ãªãããã£ãããœã±ããã䜿çšããå Žåã¯ææçãªæ¹æ³ã§ïŒã
ãããŸã§ã®ãšããã裞ã®ãã¬ããããŒãããã€ã¯ãã³ã³ãããŒã©ãŒãã«ã¡ã©ããµãŒãã
ãµãŒãã¯åœ¢ç¶ãæéãšãšãã«å€åããä¿¡å·ã«ãã£ãŠå¶åŸ¡ããããããä»åã¯ãã€ã¯ãã³ã³ãããŒã©ãŒãé©åã«ãæãããå¿ èŠããããããã¯ãªãŒããå¿ èŠã§ãã äžè¬ã«ãé»åãšã¯ã©ãŒãã®ã¯ãã ä»ãã解é€ããææ¡ãããã¹ããŒã ã«åŸã£ãŠUSBtoUARTã³ã³ããŒã¿ããã€ã¯ãã³ã³ãããŒã©ã«æ¥ç¶ããŸãã ãã€ã¯ãã³ã³ãããŒã©ãå®å®ã§å転ããããšããã³ã®å²ãåœãŠãå転ããã¯ãã ä»ãæã«ãéåžžããŒã¯ãããŠããæåã®ãã³ã«çŠç¹ãåãããããšãå¿ããªãã§ãã ããã ïŒç¹°ãè¿ããŸãããç§ã¯èª°ããã°ãã ãšã¯æããŸããããå人çã«ã¯äœåºŠãç°¡åã«é£œããããšãã§ããŸããã
é»æºæ¥ç¶å³ãã¯ã©ãŒãããã³ãªã»ããã
USBtoUARTã€ã³ã¿ãŒãã§ã€ã¹ã³ã³ããŒã¿ãŒãRXãTXãããã³DTRãã³ã«ã¯ãã ä»ãããŸãã DTRã¯ãã³ã³ãã³ãµãä»ããŠãã€ã¯ãã³ã³ãããŒã©ãŒã®ãªã»ãããã³ã«æ¥ç¶ããïŒãªã»ããïŒããªã»ãããæŒãå¿ èŠãªãã¹ã±ãããèªåçã«å ¥åãããŸãã
ãã¹ãŠãæ£ããæ¥ç¶ãããŠããã°ããã€ã¯ãã³ã³ãããŒã©ãŒãPCã«æ¥ç¶ããŠã¹ã±ãããèšå ¥ã§ããŸãã ïŒå¥åŠãªããšã§ãããã¯ã©ãŒãã®åŸãã«ããã³ã³ãã³ãµãŒããã€ã¯ãã³ã³ãããŒã©ãŒã®éåžžã®åäœã劚害ããã®ã§ãããããåãå€ããŸãããïŒ
ã¹ã±ããã¯ãã«ã¡ã©ã倩äºã«èšçœ®ãããããšãæ³å®ããŠæžãããŠããããšã«æ³šæããŠãã ããã ãããªã®ããã«ã€ã³ã¹ããŒã«ããå Žåã¯ããã¿ã³å€æ°ãåå²ãåœãŠããã ãã§ãã
ã¹ã±ããèªäœã
#include "Servo.h" Servo servo1,servo2; int press_xdown= 0x61; // 'a' int press_xup = 0x64; // 'd' int press_yup = 0x77; // 'w' int press_ydown = 0x73; // 's' int light = 0x6C; // 'l' boolean laight = 0; int chassis_light = 13; // int ServoPower = 11; // // ( ) int incomingByte = 0; // int X = 90; int Y = 90; int step = 5; int xmax = 180; int xmin = 0; int ymax = 180; int ymin = 0; unsigned long time_servo; // void setup() { Serial.begin(9600); servo1.attach(10); servo2.attach(9); pinMode(chassis_light, OUTPUT); pinMode(ServoPower, OUTPUT); } void loop() { if (Serial.available() > 0) // { incomingByte = Serial.read(); time_servo = millis(); digitalWrite(ServoPower, HIGH); Serial.flush(); } if ((millis()- time_servo)> 2000 ) // . digitalWrite(ServoPower, LOW); // //------------------------------------------------------ if(incomingByte == press_xup) if(X <=(xmax-step)) X = X + step; if(incomingByte == press_xdown) if(X >=(xmin+step)) X = X - step; if(incomingByte == press_yup) if(Y <=(ymax-step)) Y = Y + step; if(incomingByte == press_ydown) if(Y >=(ymin+step)) Y = Y - step; if(incomingByte>0) { servo1.write(Y); servo2.write(X); Serial.print(X,DEC); Serial.print(":"); Serial.println(Y,DEC); } incomingByte = 0; }
ã¹ã±ããã®2çªç®ã®ããŒãžã§ã³ã ã«ã¡ã©ã¯æ°Žå¹³æ¹åã«360床ãåçŽæ¹åã«90床移åã§ããããã«ãªããŸãããããã¯ããªã¢ãŒãã³ã³ãããŒã«ãç°¡çŽ åããããã«è¡ãããŸãã ãããã©ã®ããã«èµ·ãããã«ã€ããŠã¯ã2çªç®ã®ãããªãåç §ããŠãã ããã
ã¹ã±ããã¯ãã£ãšè€éã§ãã
#include "Servo.h" Servo servo1,servo2; int press_xdown= 0x61; // 'a' int press_xup = 0x64; // 'd' int press_ydown = 0x77; // 'w' int press_yup = 0x73; // 's' int light = 0x6C; // 'l' boolean laight = 0; int chassis_light = 13; // int ServoPower = 11; // // ( ) int incomingByte = 0; // int X = 90; int Y = 90; int step = 5; int xmax = 360; int xmin = 0; int ymax = 90; int ymin = 0; unsigned long time_servo; // void setup() { Serial.begin(9600); servo1.attach(10); servo2.attach(9); pinMode(chassis_light, OUTPUT); pinMode(ServoPower, OUTPUT); } void loop() { if (Serial.available() > 0) { // incomingByte = Serial.read(); time_servo = millis(); digitalWrite(ServoPower, HIGH); Serial.flush(); } if ((millis()- time_servo)> 1000 ) // . digitalWrite(ServoPower, LOW);// //------------------------------------------------------ if(incomingByte == press_xup) { X = X + step; if(X>360) X = 0; } if(incomingByte == press_xdown) { X = X - step; if(X <0) X = 360; } if(incomingByte == press_yup) if(Y <=(ymax-step)) Y = Y + step; if(incomingByte == press_ydown) if(Y >=(ymin+step)) Y = Y - step; if(incomingByte>0) { if(X>180) { servo1.write(180-Y); servo2.write((180-X)*-1); } else { servo1.write(Y); servo2.write(X); } Serial.print(X,DEC); Serial.print(":"); Serial.println(Y,DEC); } incomingByte = 0; }
15ã16ãã³ïŒãŸãã¯Arduinoãã³é 眮ã§ã¯9.10ïŒã§ããµãŒãã®ä¿¡å·æ¥ç¹ãæ¥ç¶ããããµãŒãã®é»æºãäžè¬çãªé»æºã«æ¥ç¶ãããŸãã ïŒããžãã¯ãšé»æºãŠãããã®é»åãåé ããå¿ èŠãããããšã¯ç¥ã£ãŠããŸãããå°ãããããšã«æ±ºããã®ã§ãå°æ¥çã«ã¯æ·±å»ãªã°ãªããã§çœ°ãããããããããŸãããïŒ
ããç¥ãããŠããããŒã®çµã¿åããaãsãdãwã䜿çšããŠã«ã¡ã©ãå転ã§ããŸãã åœç¶ããããã®ããŒã®ã³ãŒãã¯ããã€ã¯ãã³ã³ãããŒã©ãŒãåããCOMããŒãïŒUSBtoUARTã³ã³ããŒã¿ãŒãPCã«æ¥ç¶ãããŠãããšãã«è¡šç€ºãããŸãïŒã«éä¿¡ããå¿ èŠããããŸãã
éåžžã«æ zyãªïŒç§ã®ããã«ïŒããã«ãPCããã«ã¡ã©ãåãç°¡åãªå°ããªããã°ã©ã ãã¹ã±ããããŸããã ãœãŒã¹ã¯ããã«ãããŸãã SkypeãŸãã¯VirtualDubããã°ã©ã ãä»ããŠãããªãèŠèŽã§ããŸãããäžè¬çã«ã¯ååãªæ¹æ³ããããŸãã
6.ã©ã€ã ïŒãªãã·ã§ã³ïŒã
ã©ãããããã®ã«ã¡ã©ã¯ããã¬ããããŒãäžã§éåžžã«å°ãããLEDãããã«ã¯ãã ä»ããããCMOSãã©ã³ãžã¹ã¿ãé»æºã«æ¥ç¶ãããŠããå Žæã«å€ãã®ã¹ããŒã¹ãæ®ã£ãŠããŸãã ã«ã¡ã©èªäœã®ãã€ã¯ãLEDãããã©ã³ãžã¹ã¿ã®ã²ãŒãã«é»å§ãæ¥ç¶ããŸããã ã«ã¡ã©ãã¢ã¯ãã£ãã«ãªããšãããã¹ãããã©ã€ããèªåçã«ã«ããã€ã³ãããŸãã å°æ¬ããããã€ãã«ãããæ·±å»ãªè² è·ãåãæ¿ããããã«ãCMOSãã©ã³ãžã¹ã¿ãã©ã®ããã«äœ¿çšã§ãããã«ã€ããŠã®ãªã³ã¯ã次ã«ç€ºããŸãã ãšããã§ãç§ã®ãæ°ã«å ¥ãã®ãµã€ãã®1ã€ã§ãããç§ã®ãããªé»åæ©åšã®ãããŒã¯ãããããããŸãã
ã ãããå³ã«LEDãè¿œå ããããšãã§ããŸãã
7.ããã±ãŒãã«ã®è£åŒ· ïŒãªãã·ã§ã³ïŒã
ãããéåžžã«ãä¿®æ£ãããããïŒåœŒã¯ã·ã§ãã¯ç¶æ ã«ãããšç¢ºä¿¡ããŠããŸãïŒãçŸåšã®æ¶è²»éã¯å¢å ããŠããŸãã ãã®åºå šäœ+ç §æã§ã¯ã1ã€ã®USBããæšæºã®500 mAãåŸãããªããªããŸããã ãããã£ãŠãããã±ãŒãã«ããæåŸã«åå²ããUSBãã©ã°ãåããããè¯ãã±ãŒãã«ã«äº€æããããšããå§ãããŸãã ãŸãã¯ãé»æºæ¥ç¹ïŒèµ€ãšé»ïŒã®ã¿ã䜿çšããŠã2çªç®ã®ãã©ã°ãèªåã§ã¯ãã ä»ãããŸãã ããã¯ããã©ã°ãéããŠç·šçµãæ éã«åãå€ããå¥ã®ãã©ã°ãé»æºã¯ã€ã€ã«ã¯ãã ä»ãããããšã§å¯èœã§ãïŒèµ€ãšé»ã®ã¿!!!ïŒã æ¯ã®USBã³ã³ãããŒã©ãŒãåããŠã·ã£ãããªãããæãæ¥ãã®ã§ãæ éã«è¡ã£ãŠãã ããã ãã¹ãŠãé©åã«åé¢ããŸãã
ã±ãŒãã«ã匷åããæ¹æ³ãå³åŒçã«ç€ºããŸããã
2çªç®ã®USBãã©ã°ã®ä»£ããã«æšæºã®Molexã³ãã¯ã¿ãã¯ãã ä»ãããŠããç¡å¶éãïŒã»ãŒïŒã®é»åãåŸãããšãã§ããŸããããã®ãããªèšèšãã©ãããããã«æ¥ç¶ããããšã¯ã§ããŸããã
8.çµæžçãªç¯çŽ ïŒãªãã·ã§ã³ïŒã
éæ¢ããŠãããµãŒãã«çµŠé»ããªãããã«ãã©ã€ãããªãã«ããã®ãšåãæ¹æ³ã䜿çšããŠããµãŒãã®é»æºããªãã«ããããšãã§ããŸãã ã¹ã±ããã§ã¯ããã®ãªãã·ã§ã³ãæäŸãããŠããŸãã 2ç§éã³ãã³ããåä¿¡ãããªãå ŽåããµãŒãã®é»æºããªãã«ãªããŸãã å¥ã®ãã®ãããªããªãã¯ã¯ãã¢ã€ãã«æéäžã®ãµãŒãã®åä»ãªã¬ã©ã¬ã©ãç·©åããŸãã ããã¯ãäºç®ãµãŒãã®èšèšæ©èœã«ãããã®ã§ãã
ç§ã¯ãããªã«æžãã€ããã¯ãããŸããã§ããããããèªäœã§ããã
ãããªãšåçãæ£ãã衚瀺ããããã«ãäžèšã®ãã¹ãŠãã¹ã¯ããŒã«ããããšã¯æããã§ãã ãããŠåœŒãã¯ããã«ããïŒïŒ
ãããªïŒ
çæéã§äœæ¥å¡ã®ãªã¯ãšã¹ãã«å¿ããŠãã«ã¡ã©èªäœããã®ç»åã®æ»ããããè©äŸ¡ã§ãããããªãæãããšããŸããã
ãµãŒãã¹ãããã¯1ã§ããæåã«ã³ãã³ãã¯50ããªç§ããšã«éä¿¡ããããã®åŸ100ããªç§ããšã«éä¿¡ãããŸãã
ã¹ããã5ã100msããšã«ã³ãã³ããå®è¡ããŸãã
åçïŒ
åçä»ãã®é·ãããã€ã亀éïŒ
PS
1.誰ããåçãèšäºã®äžå€®ã«çœ®ãæ¹æ³ãæããŠããããæè¬ããŸãã ç°¡åã«äœããæ©èœããŸããã§ããããããã¯ããŸãããèŠããŸããã