µÎ°³ÀÇ DC¸ðÅ͸¦ ÀÌ¿ëÇØ¼ ¹æÇâÀ» ¹Ù²Ü ¼ö ÀÖµµ·Ï ÇϰڽÀ´Ï´Ù. ±¤¼¾¼¿Í ·£ÅÏÀ» »ç¿ëÇØ¼ ÀÚµ¿Â÷¸¦ ½±°Ô Á¶Á¾ÇÒ ¼ö ÀÖÀ» °Í °°½À´Ï´Ù.
·£ÅÏÀÌ ºñÃß´Â ÂÊÀ¸·Î ¹æÇâÀ» ¹Ù²Ù¾î µû¶ó°¡´Â ÀÚµ¿Â÷.
¨Û Á÷·ù¸ðÅÍ¿Í ¹ÙÄû
¹ÙÄû¸¦ Á÷·ù ¸ðÅÍÀÇ È¸ÀüÃà¿¡ Á÷Á¢ ¿¬°áÇÏ¸é ³Ê¹« ºü¸£°Ô ¿òÁ÷À̹ǷΠÀü¾ÐÀ» ³·Ãç¼ ¼Óµµ¸¦ ³·ÃçÁ®¾ß µË´Ï´Ù. Àü¾ÐÀ» ³·Ãß¸é ´ç¿¬È÷ ¼Óµµµµ ³·ÃçÁö±â´Â ÇÏÁö¸¸, ¸ðÅÍ¿¡ °ø±ÞÇÏ´Â Àü¾ÐÀ» ³·Ãß°Ô µÇ¸é ¸ðÅÍÀÇ È¸Àü·Âµµ µ¿½Ã¿¡ ¾àÇØÁö°Ô µË´Ï´Ù. ȸÀü·ÂÀÌ ³Ê¹« ³·¾ÆÁö¸é µ¹Áö ¸øÇÏ°Ô µË´Ï´Ù.
±×·¡¼ ¸ðÅÍ¿Í ¹ÙÄû »çÀÌ¿¡ ±â¾î¹Ú½º¸¦ »ç¿ëÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù. ±â¾î ¹Ú½º¸¦ »ç¿ëÇÏ¿© ¼Óµµ¸¦ ³·Ãß°Ô µÇ¸é ȸÀü·ÂÀº ´õ¿í °ÇØÁö°í ¼Óµµ´Â ³·Ãâ ¼ö ÀÖ½À´Ï´Ù.
¨Û Á÷·ù ±â¾î ¸ðÅÍ
Á÷·ù ±â¾î ¸ðÅÍ´Â Á÷·ù ¸ðÅÍ¿¡ ±â¾î¹Ú½º¸¦ °áÇÕÇÏ¿© Çϳª·Î ¸¸µç °ÍÀÔ´Ï´Ù. 4.8º¼Æ®¿¡¼ 6º¼Æ®ÀÇ Àü¾ÐÀ» °ø±ÞÇÏ¿© µ¿ÀÛ½Ã۰í 6º¼Æ®¸¦ °ø±ÞÇÒ ¶§ 1ºÐ¿¡ 300ȸÀüÀ» ÇÕ´Ï´Ù. Àü·ù´Â ºÎÇϰ¡ ¾øÀ» ¶§ 120mA ³»¿Ü¸¦ ¼Ò¸ðÇÕ´Ï´Ù. ºÎÇϰ¡ °¡ÇØÁ³À» °æ¿ì¿¡´Â Á¦Á¶ ¾÷üÀÇ »ç¾çÀÌ ³ª¿Í ÀÖÁö´Â ¾ÊÁö¸¸ ¾à 2 ¾ÏÆä¾î ³»¿Ü¸¦ ¼Ò¸ðÇÏ´Â °Í °°½À´Ï´Ù.
¨Û ȸ·Îµµ
¾ÆµÎÀ̳ëÀÇ 5¹ø ´ÜÀÚ¿Í 6¹ø ´ÜÀÚ¿¡ °¢°¢ 330¿À¿ÈÀÇ ÀúÇ×À» ¿¬°áÇϰí, °Å±â¿¡ Æ®·£Áö½ºÅÍÀÇ º£À̽º¸¦ ¿¬°áÇÕ´Ï´Ù. °¢ Æ®·£Áö½ºÅÍÀÇ ¿¡¹ÌÅÍ´Â Á¢Áö(0V)¿¡ ¿¬°áÇϰí Á÷·ù¸ðÅ͸¦ Ä÷ºÅÍ¿¡ ¿¬°áÇÕ´Ï´Ù. Á÷·ù ¸ðÅÍÀÇ ´Ù¸¥ ÂÊÀº 5V Àü¿ø¿¡ ¿¬°á ÇÕ´Ï´Ù. ¸ðÅ͸¦ º¸È£Çϱâ À§ÇÑ ÇöóÀÌ¹é ´ÙÀÌ¿Àµåµµ ¸ðÅÍ¿¡ º´·Ä·Î ¿¬°áÇØÁÝ´Ï´Ù. ¾ÆµÎÀ̳ëÀÇ 9¹ø°ú 10¹ø ´ÜÀÚ¿¡´Â 330¿À¿ÈÀÇ ÀúÇ×À» °¢°¢ ¿¬°áÇÏ°í ¹ß±¤´ÙÀÌ¿ÀµåÀÇ ¾Ö³ëµå¸¦ ¿¬°áÇØÁÝ´Ï´Ù. ¹ß±¤´ÙÀÌ¿ÀµåÀÇ Ä³¼Òµå´Â Á¢Áö(0V) ÂÊÀ¸·Î ¿¬°áÀ» ÇØÁÖ¾î¾ß ÇÕ´Ï´Ù.
±¤¼¾¼ µÎ°³¸¦ °¢°¢ ÇÑÂÊ ´Ù¸®¸¦ 5º¼Æ®¿¡ ¿¬°áÇÏ°í ´Ù¸¥ ÂÊ ´Ù¸®´Â 4.7ų·Î¿À¿ÈÀÇ ÀúÇ׿¡ ¿¬°áÇÕ´Ï´Ù. ÀúÇ×ÀÇ ´Ù¸¥ÂÊ ´Ù¸®´Â Á¢Áö(0V)¿¡ ¿¬°áÇÕ´Ï´Ù. ±×¸®°í ±¤¼¾¼¿Í ÀúÇ×ÀÌ ¿¬°áµÈ Áß°£Á¡¿¡¼ ¼±À» ³»¾î ¾ÆµÎÀÌ³ë ¾Æ³¯·Î±× ÀÔ·Â ´ÜÀÚ A0, A1¿¡ ¿¬°áÇÕ´Ï´Ù.
¨Û ±¤¼¾¼ ȸ·Î
±¤¼¾¼¿¡ ¿¬°áÇÏ´Â ÀúÇ×À» Áö³¹ø¿¡´Â 10ų·Î¿À¿ÈÀ» »ç¿ëÇß¾ú´Âµ¥, ±¤¼¾¼´Â ¹àÀ» ¶§´Â 10ų·Î¿À¿È, ¾îµÎ¿ï ¶§´Â 1¸Þ°¡¿À¿ÈÀÇ °ªÀ» °¡Áö´Â °ÍÀ̾ú±â ¶§¹®¿¡ 10ų·Î¿À¿ÈÀÇ ÀúÇ×À» »ç¿ëÇØ¼ ¹àÀ» ¶§ 2.5 º¼Æ®, ¾îµÎ¿ï ¶§ 0.05 º¼Æ®¸¦ ¾òµµ·Ï Çß´ø ¹Ý¸é¿¡ À̹ø¿¡´Â ¹àÀ» ¶§ 6 ų·Î¿À¿È, ¾îµÎ¿ï ¶§ 60 ų·Î¿À¿ÈÀÌ µÇ´Â ±¤¼¾¼¸¦ »ç¿ëÇÏ·Á°í ÇÕ´Ï´Ù.
µû¶ó¼ 6 ų·Î¿È¿¡ °¡±î¿î 4.7 ų·Î¿À¿È ÀúÇ×À» »ç¿ëÇϸé, ¹àÀ» ¶§ 2.2 º¼Æ®, ¾îµÎ¿ï ¶§ 0.07 º¼Æ®ÀÇ Àü¾ÐÀ» ¾òÀ» ¼ö ÀÖ½À´Ï´Ù.
¨Û Æ®·£Áö½ºÅÍ È¸·Î
Æ®·£Áö½ºÅÍÀÇ º£À̽º¿¡ ¿¬°áÇÏ´Â ÀúÇ×Àº ¿Ö 330 ¿À¿ÈÀ» ÇÕ´Ï´Ù. ¸ðÅÍ¿¡ ºÎÇϰ¡ °É·ÈÀ» ¶§ 2 ¾ÏÆä¾î Á¤µµÀÇ Àü·ù¸¦ ¼Ò¸ðÇÒ ¼ö Àֱ⠶§¹®¿¡ Æ®·£Áö½ºÅÍÀÇ ÁõÆø·üÀÌ 100À̹ǷΠº£À̽º¿¡´Â 20 ¹Ð¸®¾ÏÆä¾îÀÇ Àü·ù¸¦ Èê·ÁÁà¾ß ÇÕ´Ï´Ù.
µû¶ó¼ 5 º¼Æ®¸¦ 0.02 ¾ÏÆä¾î·Î ³ª´©¾î ÁÖ¸é 250 ¿À¿ÈÀÇ ÀúÇ×À» ¿¬°áÇØ¾ß ÇÕ´Ï´Ù. ±×·±µ¥ ½ÃÁß¿¡¼ 250 ¿À¿ÈÀÇ ÀúÇ×À» ±¸Çϱâ´Â ½±Áö°¡ ¾Ê°í, 250 ¿À¿È º¸´Ù ÀÛÀº °ªÀÇ ÀúÇ×À» »ç¿ëÇϸé Àü·ù°¡ ´õ ¸¹ÀÌ Èê·¯ ¸ðÅÍÀÇ ¼ö¸íÀ» ´ÜÃà½Ãų ¼öµµ ÀÖ¾î¼, 250 ¿À¿È º¸´Ù Å« ÀúÇ× Áß¿¡¼ °¡Àå ºñ½ÁÇÑ °ªÀÇ ÀúÇ×À» ãÀº °ÍÀÌ 330 ¿À¿ÈÀÌ¾î¼ 330 ¿À¿È ÀúÇ×À» »ç¿ëÇÏ´Â °ÍÀÔ´Ï´Ù.
¨Û ÇÊ¿äÇÑ ºÎǰ ¸ñ·Ï 1
ÀÚµ¿Â÷¸¦ ¸¸µå´Âµ¥ ÇÊ¿äÇÑ Àç·áµéÀº ¿ì¼± ºÎǰµéÀ» ²ÉÀ» ºê·¹µå º¸µå 1°³,ºÎǰµéÀ» ¿¬°áÇÒ Á¡ÆÛ¼± 1¼¼Æ®, ¾ÆµÎÀÌ³ë º¸µå 1°³, ÄÄÇ»ÅÍ¿Í ¿¬°áÇÒ USB ÄÉÀ̺í 1°³, ÄÄÇ»ÅͰ¡ 1¼¼Æ®, ´ÙÀÌ¿Àµå°¡ 2°³, Æ®·£Áö½ºÅͰ¡ 2°³, ±¤¼¾¼°¡ 2°³ ÇÊ¿äÇÕ´Ï´Ù.
¨Û ÇÊ¿äÇÑ ºÎǰ ¸ñ·Ï 2
±× ´ÙÀ½ 4.7 ų·Î¿À¿È ÀúÇ×ÀÌ 2°³, 330 ¿À¿È ÀúÇ×ÀÌ 4°³ ÇÊ¿äÇϰí, ¹ß±¤´ÙÀÌ¿Àµå°¡ 2°³ ÇÊ¿äÇϰí, ±× ´ÙÀ½ ¹ÙÄû°¡ 2°³, Á÷·ù ±â¾î ¸ðÅͰ¡ 2°³, AA°ÇÀüÁö 4°³¸¦ ³ÖÀ» ¼ö ÀÖ´Â °ÇÀüÁöȦ´õ°¡ 1°³ ÇÊ¿äÇѵ¥ ½½¶óÀÌµå ½ºÀ§Ä¡°¡ ºÎÂøµÇ¾î ÀÖ°í, ¾ÆµÎÀ̳ë Àü¿øÀè¿¡ ¸Â´Â Àü¿ø Ç÷¯±×°¡ ºÎÂøµÇ¾î ÀÖ¾î¾ß ÇÕ´Ï´Ù. ¾ÆÅ©¸±ÆÇÀÌ Çϳª ÇÊ¿äÇѵ¥ ºê·¹µåº¸µå Å©±â¿¡ ¾ÆµÎÀ̳ëÀÇ ±¸¸Û°ú ȣȯµÇ´Â ±¸¸ÛÀÌ ¹Ì¸® ¶Õ·Á ÀÖ¾î¾ß ÇÕ´Ï´Ù. ¾ÆµÎÀÌ³ë º¸µå À§¿¡ ºê·¹µåº¸µå¸¦ °íÁ¤Çϱâ À§ÇØ ÇÊ¿äÇÑ °ÍÀÔ´Ï´Ù.
±× ´ÙÀ½ ÀÚµ¿Â÷ ¸öü¿ë ±âÆÇÀÌ ÇÊ¿äÇѵ¥, 80x120mmÅ©±â¿¡, ¾ÆµÎÀ̳ë, ¸ðÅÍ ÁöÁö´ë ȣȯ ±¸¸ÛÀÌ ¶Õ·Á ÀÖ¾î¾ß ÇÕ´Ï´Ù.
¨Û ÇÊ¿äÇÑ ºÎǰ ¸ñ·Ï 3
±×´ÙÀ½ Á÷·ù ±â¾î ¸ðÅ͸¦ ±âÆÇ¿¡ °íÁ¤Çϱâ À§ÇÑ ÁöÁö´ë°¡ 2°³, 10 ¹Ð¸®¹ÌÅÍ Å©±âÀÇ ±âÆÇÁöÁö´ë 8°³, 15 ¹Ð¸®¹ÌÅÍ Å©±âÀÇ ±âÆÇÁöÁö´ë 4°³, 25 ¹Ð¸®¹ÌÅÍ Å©±âÀÇ ±âÆÇÁöÁö´ë 1°³°¡ ÇÊ¿äÇÕ´Ï´Ù. 10mm ±æÀÌÀÇ º¼Æ® 19°³, 5mm ±æÀÌÀÇ Á¢½Ã¸Ó¸® º¼Æ® 4°³, ³ÊÆ® 23°³°¡ ÇÊ¿äÇÕ´Ï´Ù. ±×¸®°í AAÅ©±â °ÇÀüÁö 4°³°¡ ÇÊ¿äÇÕ´Ï´Ù.
¨Û ÇÊ¿äÇÑ ºÎǰ ¸ñ·Ï 4
±× ´ÙÀ½ º§Å©·Î Å×ÀÙÀÌ 1¼¼Æ® ÇÊ¿äÇÕ´Ï´Ù. º§Å©·Î Å×ÀÙÀ̶õ ÈçÈ÷ ÂïÂïÀ̶ó°í ÇÏ´Â Àç·á·Î ºê·¹µåº¸µå¸¦ ¾ÆµÎÀ̳뺸µå¿¡¼ ¶¼¾î³¾ ¼ö ÀÖµµ·Ï Çϱâ À§ÇØ »ç¿ëÇÏ´Â °ÍÀÔ´Ï´Ù. ±×¸®°í ·£ÅÏÀÌ ÇÊ¿äÇÕ´Ï´Ù. ±× ´ÙÀ½ °ø±¸°¡ ¸î °¡Áö ÇÊ¿äÇѵ¥¿ä. ³ª»ç¸¦ Á¶À̴µ¥ ÇÊ¿äÇÑ ½ÊÀÚµå¶óÀ̹ö, ³ª»ç¸¦ Á¶ÀÏ ¶§ ³ÊÆ®°¡ µ¹¾Æ°¡Áö ¾Êµµ·Ï Àâ°Å³ª, Á¡ÆÛ¼±À» ³¢¿ï ¶§µµ »ç¿ëÇÒ ¼ö ÀÖ´Â ¶óµð¿À ÆæÄ¡, ·Õ³ë¿ìÁî ÇöóÀ̾î¶ó°íµµ ÇÕ´Ï´Ù. º§Å©·Î Å×ÀÙÀ» ÀÚ¸¦ ¶§ »ç¿ëÇÒ °¡À§°¡ ÇÊ¿äÇÕ´Ï´Ù.
¨Û ÀÚµ¿Â÷ ¸öü ±âÆÇ¿¡ ÁöÁö´ë¸¦ ÀÌ¿ëÇÏ¿© ¸ðÅ͸¦ °íÁ¤
Á¦ÀÏ ¸ÕÀú Á÷·ù ±â¾î ¸ðÅ͸¦ ÀÚµ¿Â÷ ¸öü¿¡ °íÁ¤½ÃÄÑ º¸µµ·Ï ÇսôÙ.¿ì¼± Á÷·ù ±â¾î ¸ðÅÍÀÇ ¾çÂÊ¿¡ 10¹Ð¸®¹ÌÅÍ º¼Æ®¿Í ³ÊÆ®¸¦ »ç¿ëÇÏ¿© ¸ðÅÍ ÁöÁö´ë¸¦ °íÁ¤ÇÑ ´ÙÀ½ ¸ðÅÍ ÁöÁö´ë¸¦ ·Îº¿ ¸ðü ±â¹Ý¿¡ °íÁ¤ÇÕ´Ï´Ù.
º¼Æ®¸¦ Á¶ÀÏ ¶§´Â ½ÊÀÚ µå¶óÀ̹ö¸¦ »ç¿ëÇϰí, ³ÊÆ®´Â ¶óµð¿À ÆæÄ¡·Î Àâ¾ÆÁÖ¸é µË´Ï´Ù, ÁöÁö´ëÀÇ ¸ð¼¸®ºÎºÐÀº ¾ÈÂÊ¿¡ ÀÖ´Â º¼Æ®ºÎÅÍ °íÁ¤ÇØ¾ß °íÁ¤ÇϱⰡ ½±½À´Ï´Ù.
¨Û ¸ðÅÍ¿Í ¹ÙÄû°¡ ¸ðµÎ °íÁ¤
µÎ°³ÀÇ ¸ðÅ͸¦ ¸¶ÁÖº¸µµ·Ï ÀÚµ¿Â÷ ¸öü ±âÆÇ¿¡ °íÁ¤ÇÑ ÈÄ ¸ðÅÍÀÇ È¸ÀüÃà¿¡ ¹ÙÄû¸¦ ³¢¿ö º¾½Ã´Ù. ÀÚµ¿Â÷ ¸öü ±âÆÇÀ» µÚÁý¾î º¸¸é ÀÌ·¸°Ô Á¿쿡 ³ÊÆ® ³× °³¾¿ °¢°¢ °íÁ¤µÈ ¸ð½ÀÀÌ º¸ÀÏ °ÍÀÔ´Ï´Ù.
¨Û ¾Õ¹ÙÄû ´ë¿ë ÁöÁö´ë ºÎÂø
¾Õ¹ÙÄû´Â ±âÆÇ ÁöÁö´ë¸¦ ÀÌ¿ëÇÏ¿© ¾Õ¹ÙÄû¸¦ ´ë½ÅÇÕ´Ï´Ù. 25 ¹Ð¸®¹ÌÅÍ ±æÀÌÀÇ ±âÆÇ ÁöÁö´ë¸¦ ÀÚµ¿Â÷ ¸öü¿ë ±âÆÇÀÇ ¾ÕºÎºÐ, Áß¾Ó¿¡ ±×¸²°ú °°ÀÌ ³ÊÆ®¸¦ ÀÌ¿ëÇÏ¿© °íÁ¤Çϰí, ¹Ø ºÎºÐ¿¡´Â 10 ¹Ð¸®¹ÌÅÍ ±æÀÌÀÇ º¼Æ®¸¦ ³¢¿ö ³ôÀ̸¦ Á¶ÀýÇÒ ¼ö ÀÖµµ·Ï ÇØÁÝ´Ï´Ù.
¨Û °ÇÀüÁö Ȧ´õ¸¦ ¸öü¿¡ °íÁ¤
À̹ø¿¡´Â °ÇÀüÁö Ȧ´õ¸¦ °íÁ¤ÇØ º¾´Ï´Ù. ¿ì¼± 10¹Ð¸®¹ÌÅÍ ÁöÁö´ë¸¦ ±â¾î ¸ðÅÍ ¾ÈÂÊÀÇ µÎ °÷¿¡ ³¢¿ö ÁÝ´Ï´Ù. ¹Ý´ëÆí¿¡´Â ³ÊÆ®¸¦ ³¢¿ï °ø°£ÀÌ ¾øÀ¸¹Ç·Î ±×´ë·Î µÓ´Ï´Ù. ±× ´ÙÀ½¿¡´Â °ÇÀüÁö Ȧ´õÀÇ ±¸¸Û µÎ °÷¿¡ 10¹Ð¸®¹ÌÅÍ ÁöÁö´ë¸¦ ¹Ý´ëÆí¿¡¼ 10¹Ð¸®¹ÌÅÍ º¼Æ®·Î °íÁ¤ÇÕ´Ï´Ù. ±× ´ÙÀ½¿¡´Â °ÇÀüÁö Ȧ´õ¸¦ ÀÚµ¿Â÷ ¸öüÀÇ À§ÂÊ¿¡ ±×¸²°ú °°ÀÌ ³¢¿ì°í ³ÊÆ®·Î Á¶¿© ÁÝ´Ï´Ù.
¨Û ȸ·Î ±¸¼º
¿Ï¼ºµÈ ÀÚµ¿Â÷ ¸öü À§¿¡ ÁغñÇÑ Àç·áµéÀ» °¡Áö°í ȸ·Î¸¦ ±¸¼ºÇØ º¾½Ã´Ù. ºê·¹µåº¸µå À§¿¡ ºÎǰµéÀ» ¹èÄ¡Çϰí Á¡ÆÛ¼±À» ÀÌ¿ëÇÏ¿© ¿¬°áÀ» ÇØÁݽôÙ. ¸ðµÎ ¿¬°áÇÑ µÚ¿¡´Â ºÎǰÀÇ ¹æÇâ°ú ´Ù¸® ¼ø¼ µîÀ» ´Ù½Ã Çѹø È®ÀÎ ÇÕ´Ï´Ù.
¨Û 1´Ü°è ½ºÄÉÄ¡
°¢ ´ÜÀÚ ¹øÈ£¸¦ ¿ëµµ¿¡ µû¶ó »ó¼ö·Î Á¤ÀÇÇÕ´Ï´Ù.
#defineÀ̶ó´Â °ÍÀÌ »ó¼ö¸¦ Á¤ÀÇÇϸé #define µÚ¿¡ ½áÁØ À̸§À» ½ºÄÉÄ¡ ¾È¿¡¼ »ç¿ëÇÏ¸é ±× ´ÙÀ½¿¡ µû¶ó¿À´Â °ªÀ¸·Î ´ëÄ¡ÇØÁÖ°Ô µË´Ï´Ù. ±× ´ÙÀ½Àº ¸ðÅ͸¦ µ¿ÀÛ½ÃŰ´Â ¼Óµµ¸¦ µÎ ´Ü°è·Î SPEED_LOW¿Í SPEED_HIGH·Î Á¤ÀÇÇß½À´Ï´Ù.
ÀÌ °ªÀº ½ÇÁ¦ ÀÚµ¿Â÷¸¦ µ¿ÀÛ½ÃŰ¸é¼ ÀûÀýÇÑ ¼Óµµ·Î Á¶ÀýÀ» ÇØÁÙ Çʿ䰡 ÀÖÀ» °ÍÀÔ´Ï´Ù.
¸ðÅÍ¿¡ ´ÜÀÚ¿¡ 255°¡ Ãâ·ÂµÇ¸é 5º¼Æ®°¡ °ø±ÞµÇ°í, 100ÀÌ Ãâ·ÂµÇ¸é 2 º¼Æ® Á¤µµÀÇ Àü¾ÐÀÌ Ãâ·ÂµË´Ï´Ù. ±× ´ÙÀ½ ¼Â¾÷ ÇÔ¼ö¿¡¼´Â ¿ì¼± ¸ðÅÍ ÁÂ,¿ì¿Í ¹ß±¤´ÙÀÌ¿Àµå ÁÂ,¿ìÀÇ ´ÜÀÚ¸¦ Ãâ·Â¸ðµå·Î ¼³Á¤ÇÑ ÈÄ testRobot()À̶ó´Â ÇÔ¼ö¸¦ È£ÃâÇÏ¿´½À´Ï´Ù. testRobot()ÇÔ¼ö¿¡¼´Â ½ÇÁ¦ ¹ß±¤´ÙÀÌ¿Àµå¿Í ¸ðÅÍÀÇ µ¿ÀÛÀ» ½ÃÇèÇÏ´Â ºÎºÐÀÌ ÀÖ¾î¾ß ÇÕ´Ï´Ù
¨Û 1´Ü°è ½ºÄÉÄ¡ÀÇ testRobot() ÇÔ¼ö
testRobot() ÇÔ¼ö¿¡¼´Â ¹Ýº¹¹®À» »ç¿ëÇÏ°í ¹Ýº¹ ºí·°¾È¿¡¼, ¸ðÅÍ ÁÂ, ¿ì¸¦ ÄÒ ÈÄ 0.5Ãʰ£ Áö¿¬, ´Ù½Ã, ¸ðÅÍ ÁÂ,¿ì¸¦ ²ö ÈÄ 0.5Ãʰ£ Áö¿¬½Ãŵ´Ï´Ù. À§ÀÇ ¹Ýº¹ ºí·°À» 2ȸ ¹Ýº¹Çϵµ·Ï ÇÕ´Ï´Ù.
loop() ÇÔ¼ö¿¡¼´Â ¾Æ¹«°Íµµ ÇØ ÁÙ Çʿ䰡 ¾ø½À´Ï´Ù. ÇÏÁö¸¸ loop()ÇÔ¼ö ÀÚü´Â ¹Ýµå½Ã ÀÖ¾î¾ß ÇÕ´Ï´Ù. ÀÛ¼ºµÈ ½ºÄÉÄ¡¸¦ ¾ÆµÎÀÌ³ë º¸µå¿¡ Àü¼ÛÇÏ¿© ½ÃÇèÀ» ÇØ º¾´Ï´Ù.
¨Û Á÷·ÄÅë½ÅÀ¸·Î ±¤¼¾¼ °ª Àбâ
setupÇÔ¼öÀÇ testRobot() È£Ã⠺κР¹Ø¿¡ Á÷·ÄÆ÷Æ® Ãʱâȸ¦ Ãß°¡Çϰí testCDS() ÇÔ¼ö È£Ã⠺κÐÀ» Ãß°¡ÇÕ´Ï´Ù. setup() ÇÔ¼ö ´ÙÀ½¿¡ testCDS() ÇÔ¼ö¸¦ ÀÛ¼ºÇØÁÝ´Ï´Ù. testCDS() ÇÔ¼ö¿¡¼´Â Á¤¼ö º¯¼ö valueLeft¸¦ Á¤ÀÇÇÏ°í ¿ÞÂÊ ±¤¼¾¼·Î ºÎÅÍ ÃøÁ¤°ªÀ» Àоîµé¿© ÀúÀåÇÕ´Ï´Ù. ±× ´ÙÀ½ Á¤¼ö º¯¼ö voltLeft¸¦ Á¤ÀÇÇϰí valueLeftÀÇ °ªÀ» º¼Æ®·Î ȯ»êÇØ ÁÝ´Ï´Ù. ȯ»êÀ» ÇÒ ¶§´Â map() ÇÔ¼ö¸¦ »ç¿ëÇϴµ¥, map()ÇÔ¼öÀÇ Ã¹¹øÂ° ÀÎÀÚ·Î ÁÖ¾îÁø °ªÀÌ µÎ¹øÂ°¿Í ¼¼¹øÂ° ÀÎÀÚ·Î ÁÖ¾îÁø °ª»çÀÌ¿¡¼ º¯ÇÒ ¶§ ¼¼¹øÂ°¿Í ³×¹øÂ° ÀÎÀÚ·Î ÁÖ¾îÁø °ªÀ¸·Î ´ëÀÀÇÏ¿© º¯È¯À» ÇÏ°Ô µË´Ï´Ù. º¯È¯µÈ °ªÀº voltLeft¿¡ ÀúÀåµÇ°í valueLeft¿Í voltLeftÀÇ °ªÀ» Á÷·Ä Æ÷Æ®·Î Àü¼ÛÇÕ´Ï´Ù. ±× ´ÙÀ½¿¡´Â ¿À¸¥ÂÊ ¼¾¼¿¡ ´ëÇØ ¿ÞÂʰú °°Àº ÀÛ¾÷À» ÇØÁÝ´Ï´Ù.
ÀÛ¼ºµÈ ½ºÄÉÄ¡¸¦ ¾ÆµÎÀ̳뿡 Àü¼ÛÇÏ¿© ½Ã¸®¾ó ¸ð´ÏÅÍ·Î Àü¼ÛµÇ´Â °ªÀ» È®ÀÎÇØ º¾´Ï´Ù.
valueLeft¿Í valueRightÀÇ °ªÀº 0~1023, voltLeft¿Í voltRightÀÇ °ªÀº 0~5000ÀÌ ³ªÅ¸³ª¾ß ÇÕ´Ï´Ù.
±×¸®°í ±¤¼¾¼¸¦ ¼ÕÀ¸·Î °¡·ÈÀ» ¶§, ¶Ç ·£ÅÏÀ¸·Î ºñÃß¾úÀ» ¶§ÀÇ °ªÀ» È®ÀÎÇÕ´Ï´Ù.
¨Û ±¤¼¾¼·Î ÀÏÁ¤¼¼±â ÀÌ»ó °¨ÁöµÇ¸é ¹ÙÄû µ¿ÀÛ ¼ø¼µµ
óÀ½ setup() ÇÔ¼ö¿¡´Â, Ãâ·Â¸ðµå¸¦ ¼³Á¤Çϰí, ¸ðÅÍ, ¹ß±¤´ÙÀÌ¿Àµå, ¼¾¼ÀÇ µ¿ÀÛÀ» ½ÃÇèÇÕ´Ï´Ù. ¼¾¼°ªÀÇ ÁÂ¿ì Æò±ÕÀ» ±¸Çؼ ±× º¸´Ù Á¶±Ý ³ôÀº °ªÀ» ±âÁØÄ¡·Î Á¤ÇÕ´Ï´Ù.
loop() ÇÔ¼ö¿¡¼´Â µÎ ±¤¼¾¼ °ªÀ» Àоîµé¿© Àü¾ÐÀ¸·Î º¯È¯Çϰí, ¿ÞÂÊ ¼¾¼°ª°ú ¿À¸¥ÂÊ ¼¾¼°ªÀÌ ¸ðµÎ ±âÁØÄ¡¸¦ ³ÑÀ¸¸é ¾çÂÊ ¸ðµÎ °í¼ÓÀ¸·Î ÁøÇàÇÏ°í ¿ÞÂÊ ¼¾¼°ª¸¸ ±âÁØÄ¡¸¦ ³ÑÀ¸¸é ¿ÞÂÊÀº °í¼Ó, ¿À¸¥ÂÊÀº Àú¼ÓÀ¸·Î ÁøÇàÇÕ´Ï´Ù. ¿À¸¥ÂÊ ¼¾¼°ª¸¸ ±âÁØÄ¡¸¦ ³ÑÀ¸¸é ¿ÞÂÊÀº Àú¼Ó, ¿À¸¥ÂÊÀº °í¼ÓÀ¸·Î ÁøÇàÇÕ´Ï´Ù. µÎ ¼¾¼°ª ¸ðµÎ ±âÁØÄ¡ ¹Ì¸¸ÀÌ¸é ¾çÂÊ ¸ðµÎ ¸ØÃä´Ï´Ù.
¿ÞÂÊ ¼¾¼°¡ ±âÁØÄ¡ ÀÌ»ó ºûÀ» °¨ÁöÇßÀ» ¶§ ¿À¸¥ÂÊ ¹ÙÄû¸¦ Àú¼ÓÀ¸·Î ÁøÇà½ÃŰ´Â ÀÌÀ¯´Â ÇÑÂÊÀ¸·Î ³Ê¹« ±Þ¼±È¸ÇÏ´Â °ÍÀ» ¹æÁöÇϱâ À§ÇÑ °ÍÀÔ´Ï´Ù.
ÀÌÀü ´Ü°è±îÁö ÀÛ¼ºÇÑ ½ºÄÉÄ¡¿¡´Ù°¡ ¿©À¯Ä¡¸¦ ¼±¾ðÇØ ÁÝ´Ï´Ù.
¿©À¯Ä¡´Â ±¤¼¾¼ ½ÃÇè½Ã °¨ÁöµÈ ±¤¼¾¼ÀÇ Æò±Õ°ª¿¡ ´õÇØ¼ ±âÁØÄ¡¸¦ ¼³Á¤Çϱâ À§ÇÑ °ªÀÔ´Ï´Ù. ¿©À¯Ä¡¸¦ MARGINÀ¸·Î 200ÀÇ °ªÀ» ¼±¾ðÇß½À´Ï´Ù. ½ÇÁ¦ ½ÃÇèÀ» ÇØº¸°í Á¶ÀýÀ» ÇÒ Çʿ䰡 ÀÖÀ» °ÍÀÔ´Ï´Ù. ´ÙÀ½Àº CDS_INTERVALÀ» 1000À¸·Î ¼±¾ðÇߴµ¥ ÀÌ °ªÀº ¸î ¹Ð¸®Ãʸ¶´Ù ±¤¼¾¼ÀÇ °ªÀ» ÀÐÀ»Áö¸¦ ¼±¾ðÇÑ °ÍÀÔ´Ï´Ù.
±× ´ÙÀ½, prevMillis º¯¼ö¸¦ ¼±¾ðÇߴµ¥ ÀÌ º¯¼ö´Â ½Ã°£ÀÌ ¾ó¸¶³ª °æ°úÇß´ÂÁö¸¦ ¾Ë±â À§Çؼ Á÷ÀüÀÇ ½Ã°£°ªÀ» ÀúÀåÇØµÎ±â À§ÇÑ º¯¼öÀÔ´Ï´Ù. ±× ´ÙÀ½, threshold º¯¼ö¸¦ ¼±¾ðÇߴµ¥ ÀÌ º¯¼ö´Â ±âÁØÄ¡¸¦ °¡Áö°í ÀÖ±â À§ÇÑ °ÍÀÔ´Ï´Ù. ÀÌ ±âÁØÄ¡´Â ±¤¼¾¼ ½ÃÇè ½Ã ¾òÀº Æò±Õ°ª¿¡ ¿©À¯Ä¡¸¦ ´õÇØ¼ °¡Áö°í ÀÖÀ¾´Ï´Ù.
³ªÁß¿¡ ±¤¼¾¼ÀÇ °ªÀ» ÃøÁ¤ÇÒ ¶§ ¸¶´Ù ÀÌ ±âÁØÄ¡¿Í ºñ±³Çؼ ¸ðÅÍÀÇ ÁøÇà µ¿ÀÛ ¿©ºÎ¸¦ °áÁ¤ÇÏ°Ô Çß½À´Ï´Ù.
¨Û ½ºÄÉÄ¡ ±¤¼¾¼ ¿©À¯Ä¡
testCDS() ÇÔ¼ö¿¡´Â threshold °ªÀ» ¼³Á¤ÇÏ´Â ºÎºÐÀ» Ãß°¡ÇØÁÝ´Ï´Ù. ±¤¼¾¼ ÁÂ, ¿ì¿¡¼ ÀÐÀº °ªÀÇ Æò±ÕÀ» ±¸ÇÑ ´ÙÀ½ ¿©À¯Ä¡¸¦ ´õÇØ¼ threshold º¯¼ö¿¡ ÀúÀåÇÕ´Ï´Ù.
¨Û ½ºÄÉÄ¡ loop
loop() ÇÔ¼ö¿¡¼´Â ¸ÕÀú millis()ÇÔ¼ö¸¦ ½á¼ ÇöÀç ½Ã°£°ªÀ» ±¸ÇÑ ´ÙÀ½ currentMillis º¯¼ö¿¡ ÀúÀåÇÕ´Ï´Ù. ±× ´ÙÀ½ ÇöÀç ½Ã°£°ª°ú ÀÌÀü ½Ã°£°ªÀ» ºñ±³ÇÏ¿© CDS_INVERVALº¸´Ù Å©¸é ±¤¼¾¼ÀÇ °ªÀ» Àоî ó¸®ÇÕ´Ï´Ù. ¿ÞÂʰú ¿À¸¥ÂÊÀÇ ±¤¼¾¼ °ªÀ» Àоî Àü¾ÐÀ¸·Î º¯È¯ÇÏ¿© °¢°¢ÀÇ º¯¼ö¿¡ ÀúÀåÇÏ°í µð¹ö±ëÀ» À§ÇØ Á÷·ÄÆ÷Æ®·Îµµ °ªµéÀ» Àü¼ÛÇÕ´Ï´Ù.
¨Û ½ºÄÉÄ¡ ±âÁØÄ¡ ¼³Á¤
ÀоîµéÀÎ ¾çÂÊ ±¤¼¾¼ÀÇ Àü¾ÐÀÌ ¸ðµÎ ±âÁØÄ¡¸¦ ÃʰúÇÏ¸é ¾çÂÊ ¸ðÅÍ ¸ðµÎ °í¼ÓÀ¸·Î ÁøÇà½Ãŵ´Ï´Ù. ¿ÞÂÊ °ª¸¸ ±âÁØÄ¡¸¦ ÃʰúÇÏ¸é ¿ÞÂÊ ¸ðÅÍ´Â °í¼Ó, ¿À¸¥ÂÊ ¸ðÅÍ´Â Àú¼ÓÀ¸·Î ÁøÇà½Ãŵ´Ï´Ù. ¿À¸¥ÂÊ °ª¸¸ ±âÁØÄ¡¸¦ ÃʰúÇÏ¸é ¿À¸¥ÂÊ ¸ðÅÍ´Â °í¼Ó, ¿ÞÂÊ ¸ðÅÍ´Â Àú¼ÓÀ¸·Î ÁøÇà½Ãŵ´Ï´Ù. ¾çÂÊ ¸ðµÎ ±âÁØÄ¡ ÀÌÇÏ¸é ¾çÂÊ ¸ðµÎ Á¤Áö ½Ãŵ´Ï´Ù. ¸¶Áö¸·À¸·Î prevMillisÀÇ ½Ã°£°ªÀ» ÇöÀçÀÇ ½Ã°£°ªÀ¸·Î °»½ÅÇÕ´Ï´Ù.
¨Û ¿Ï¼ºµÈ »çÁø
¿Ï¼ºµÈ ½ºÄÉÄ¡¸¦ ¾ÆµÎÀÌ³ë º¸µå¿¡ ¿Ã·Á¼ ½ÇÇàÀ» ÇØ º¸°Ú½À´Ï´Ù. óÀ½ ÀÚµ¿Â÷¿¡ Àü¿øÀÌ ÅõÀÔµÇ¸é ¸ðÅͰ¡ ª°Ô µÎ ¹ø ȸÀüÇÏ´Â °ÍÀ» º¼ ¼ö ÀÖ°í, ½Ã¸®¾ó ¸ð´ÏÅ͸¦ ÄѺ¸¸é ÁÂ¿ì ±¤¼¾¼ÀÇ °ªÀ» 1ÃÊ ¸¶´Ù Ç¥½ÃÇÏ´Â °ÍÀ» º¼ ¼ö ÀÖ½À´Ï´Ù. ·£ÅÏÀ» ÀÌ¿ëÇÏ¿© ÁÂ, ¿ì ¾çÂÊ ¸ðµÎ¿¡ ºûÀ» ºñÃ߸é ÀÚµ¿Â÷ÀÇ ¿ÞÂÊ, ¿À¸¥ÂÊ ¸ðÅͰ¡ ÁøÇàÇϰí, ÀüÁøÇÏ´Â °ÍÀ» È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù. ±¤¼¾¼°¡ ³Ê¹« ¹Î°¨Çϰųª ´ú ¹Î°¨ÇÏ¸é ¿©À¯Ä¡ Áï, MARGIN°ªÀ» Á¶ÀýÇÏ¿© ¹Î°¨ÇÑ Á¤µµ¸¦ Á¶ÀýÇÒ ¼ö ÀÖ½À´Ï´Ù.
ÀÚ½ÅÀÇ ½ºÄÉÄ¡¸¦ ÀÚ½ÅÀÇ ÀÚµ¿Â÷¿¡ ¿Ã·Á¼ ½ÃÇèÀ» ÇØº¸°í ¹Î°¨µµ¸¦ Á¶ÀýÇØ º¸¼¼¿ä.
µ¿ÀÛÀÌ ÀÌ»óÇϰųª µ¿ÀÛÀ» ÇÏÁö ¾ÊÀ» ¶§´Â ¿øÀÎÀ» ã¾Æ¼ ¼öÁ¤À» ÇØº¾½Ã´Ù.
¨Û ¿À·ù »ç·Ê
¸ðÅͰ¡ µ¹Áö ¾ÊÀ» ¶§¿¡´Â ¿ì¼± Æ®·£Áö½ºÅÍÀÇ ´ÜÀÚ ¼ø¼°¡ Á¦´ë·Î ¿¬°áµÇ¾ú´ÂÁö È®ÀÎÀ» ÇÕ´Ï´Ù.
¿ì¸®°¡ »ç¿ëÇÏ´Â P2N2222AG´Â ´Ù¸¥ ´ëºÎºÐÀÇ Æ®·£Áö½ºÅͿʹ ´ÜÀÚ ¹èÄ¡°¡ ´Ù¸£±â ¶§¹®¿¡ È¥µ¿Çϱ⠽±½À´Ï´Ù.
¶ÇÇÑ Æ®·£Áö½ºÅÍÀÇ º£À̽º¿¡ ¿¬°áµÈ ÀúÇ×ÀÌ 330¿À¿ÈÀÎÁöµµ È®ÀÎÇØ º¸¼¼¿ä. ÀúÇ×°ªÀÌ ³Ê¹« Å©¸é ¸ðÅͰ¡ µ¹Áö ¾Ê½À´Ï´Ù.
¸ðÅͰ¡ °Å²Ù·Î µ¹ ¶§´Â ¸ðÅͰ¡ °Å²Ù·Î µ¹ ¶§´Â ¸ðÅÍÀÇ ¿¬°á¼±À» ¹Ý´ë·Î ¿¬°áÇØ ÁÖ½Ã¸é µË´Ï´Ù.
ºûÀ» ºñÃçµµ ¸ðÅͰ¡ µ¹Áö ¾ÊÀ» ¶§´Â ½ºÄÉÄ¡ÀÇ MARGIN°ªÀÌ ³Ê¹« Ŭ ¼ö ÀÖÀ¸´Ï ÀÌ °ªÀ» ÁÙ¿©¼ ÇØº¸½Ã°í, ±¤¼¾¼°¡ Á¦´ë·Î ¿¬°áµÇ¾î ÀÖ´ÂÁö¸¦ È®ÀÎÇÕ´Ï´Ù.
±¤¼¾¼ÀÇ ÇÑ ÂÊ ³¡Àº 5 º¼Æ®¿¡, ´Ù¸¥ ÇÑÂÊÀº 3.7 ų·Î¿À¿ÈÀÇ ÀúÇ׿¡ ¿¬°áµÇ¾î ÀÖ¾î¾ß Çϰí ÀúÇ×ÀÇ ´Ù¸¥ ÂÊ ³¡Àº 0 º¼Æ®¿¡ ¿¬°áµÇ¾î ÀÖ¾î¾ß ÇÕ´Ï´Ù. ±×¸®°í, ±¤¼¾¼¿Í ÀúÇ×ÀÌ ¿¬°áµÈ ÁöÁ¡¿¡ Á¡ÆÛ¼±À¸·Î ¾ÆµÎÀÌ³ë ¾Æ³¯·Î±× ÀÔ·Â 0¹ø (¿ÞÂÊ)°ú 1¹ø (¿À¸¥ÂÊ)ÀÌ ¿¬°áµÇ¾î ÀÖ¾î¾ß ÇÕ´Ï´Ù. ¶ÇÇÑ ÀúÇ×°ªµµ ¿Ã¹Ù¸¥Áö È®ÀÎÇØ º¸¾Æ¾ß ÇÕ´Ï´Ù. 3.7 ų·Î¿À¿È ÀúÇ×Àº ÃÊ·Ï-º¸¶ó-»¡° »ö¶ì¸¦ °¡Áö°í ÀÖ½À´Ï´Ù.
#define CDS_LEFT 0
#define CDS_RIGHT 1
#define MOTOR_LEFT 5
#define MOTOR_RIGHT 6
#define LED_LEFT 9
#define LED_RIGHT 10
#define MARGIN 200
#define CDS_INTERVAL 1000
#define SPEED_LOW 100
#define SPEED_HIGH 255
unsigned long prevMillis;
int threshold;
void setup(void)
{
pinMode(MOTOR_LEFT, OUTPUT);
pinMode(MOTOR_RIGHT, OUTPUT);
pinMode(LED_LEFT, OUTPUT);
pinMode(LED_RIGHT, OUTPUT);
testRobot();
Serial.begin(9600);
testCDS();
}
void testRobot()
{
for(int i=0; i < 2; i++){
analogWrite(MOTOR_LEFT, SPEED_HIGH);
analogWrite(MOTOR_RIGHT, SPEED_HIGH);
digitalWrite(LED_LEFT, HIGH);
digitalWrite(LED_RIGHT, HIGH);
delay(500);
analogWrite(MOTOR_LEFT, 0);
analogWrite(MOTOR_RIGHT, 0);
digitalWrite(LED_LEFT, LOW);
digitalWrite(LED_RIGHT, LOW);
delay(500);
}
}
void testCDS()
{
int valueLeft = analogRead(CDS_LEFT);
int voltLeft = map(valueLeft,0,1023,0,5000);
Serial.print("Left CDS = ");
Serial.print(valueLeft);
Serial.print(", ");
Serial.println(voltLeft);
int valueRight = analogRead(CDS_RIGHT);
int voltRight = map(valueRight,0,1023,0,5000);
Serial.print("Right CDS = ");
Serial.print(valueRight);
Serial.print(", ");
Serial.println(voltRight);
}
void loop()
{
unsigned long currentMillis = millis();
if( currentMillis - prevMillis > CDS_INTERVAL){
int valueLeft = analogRead(CDS_LEFT);
int voltLeft = map(valueLeft, 0, 1023, 0, 5000);
Serial.print("Left CDS = ");
Serial.print(valueLeft);
Serial.print(", ");
Serial.println(voltLeft);
int valueRight = analogRead(CDS_RIGHT);
int voltRight = map(valueRight, 0, 1023, 0, 5000);
Serial.print("Right CDS = ");
Serial.print(valueRight);
Serial.print(", ");
Serial.println(voltRight);
Serial.println("=====================");
if((voltLeft > threshold) && (voltRight > threshold)){
Serial.println("Both High");
analogWrite(MOTOR_LEFT, SPEED_HIGH);
analogWrite(LED_LEFT, SPEED_HIGH);
analogWrite(MOTOR_RIGHT, SPEED_HIGH);
analogWrite(LED_RIGHT, SPEED_HIGH);
}else if ( voltLeft > threshold){
Serial.println("Left High");
analogWrite(MOTOR_LEFT, SPEED_HIGH);
analogWrite(LED_LEFT, SPEED_HIGH);
analogWrite(MOTOR_RIGHT, SPEED_LOW);
analogWrite(LED_RIGHT, 0);
}else if (voltRight > threshold){
Serial.println("Right High");
analogWrite(MOTOR_LEFT, SPEED_LOW);
analogWrite(LED_LEFT, 0);
analogWrite(MOTOR_RIGHT, SPEED_HIGH);
analogWrite(LED_RIGHT, SPEED_HIGH);
}else{
Serial.println("Both Low");
analogWrite(MOTOR_LEFT, 0);
analogWrite(LED_LEFT, 0);
analogWrite(MOTOR_RIGHT, 0);
analogWrite(LED_RIGHT, 0);
}
prevMillis = currentMillis;
}
}
¾ÈÀü°Å·¡¸¦ À§ÇØ Çö±ÝµîÀ¸·Î 5¸¸¿øÀÌ»ó °áÁ¦½Ã
ÀúÈñ »çÀÌÆ®¿¡¼°¡ÀÔÇÑ ¿ì¸®ÀºÇàÀÇ ±¸¸Å¾ÈÀü¼ºñ½º¸¦
ÀÌ¿ëÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.