´Ó“ÑÇÂíÑ·»ØÉùÓïÒô¿ØÖƼÒÍ¥×Ô¶¯»¯”Instructables£¬ÏÂÔØÆô¶¯´úÂ루°üÀ¨fauxmo£©²¢½«Ëü¸´ÖƵ½PIµÄµØ·½Äã»á¼ÇµÃ¡£ÀýÈ磬“/¼Ò/ PI /”ÊÇÒ»¸öºÜºÃµÄµØ·½¡£
ÎÒÃǽ«¿ªÊ¼Óë“ÀýÈç×îС¡£py½Å±¾ºÍ²åÈëÎÒÃǵĴúÂë¡£Ê×ÏÈ£¬¸´Öƽű¾ÃüÃûеĶ«Î÷ÊÇÓеÀÀíµÄ£¬Ïñ“»ØÉùfauxmoÎÔÊÒ¡£py¡£Æä´Î£¬Ìá³öÒÔϵÄо籾µÄÐ޸ġ£
ÔÚ¶¥²¿£¬Ìí¼Órpi.gpioµ¼ÈëÄ£¿éµÄÁÐ±í¡£
½ø¿Úrpi.gpio GPIO
ÔÚmain·½·¨ÖУ¬½«ÏÂÃæµÄ´úÂëÌí¼Óµ½¶¥²¿¡£µ±½Å±¾ÔËÐÐÔÚÆô¶¯£¬Õ⽫ÉèÖÃGPIOÒý½Å×÷ΪÊä³ö·Å¸ß£¬ÒÔÓÃÓÚNPN¾§Ìå¹Ü…ÊǵÍÏúµÄÀýÍâ¡£
#ÉèÖÃGPIOÒý½ÅGPIO¸ß
¡£¼¯ºÏÒÀÄ££¨GPIO¡£°å£©
GPIOÉèÖã¨40£¬GPIO¡££¬³õʼ= 0£©
GPIOÉèÖã¨33£¬GPIO¡££¬³õʼ= 1£©
GPIOÉèÖã¨35£¬GPIO¡££¬³õʼ= 1£©
ÉèÖã¨GPIO¡£36¡¢GPIO£¬³õʼ= 1£©
GPIOÉèÖã¨37£¬GPIO¡££¬³õʼ= 1£©
GPIOÉèÖã¨38£¬GPIO¡£
ÏÖÔÚÎÒÃÇÐÞ¸Ädevice_handlerÀà¡£ÄãÏëÒªµÄ°´Å¥Ãû³Æ¸üд¥·¢Æ÷ÁÐ±í¡£Äã»áÔÚÓïÒôÃüÁîÖÐʹÓÃÕâ¸öÃû×Ö¡£ÀýÈ磬Èç¹ûÄúÑ¡ÔñµÄÃû³Æ“ÎÔÊҵƔÄúµÄÓïÒôÃüÁ“Alexa£¬´ò¿ª/¹Ø±ÕÎÔÊҵĵơ£“ÿ¸öÃû×ÖÒ²Ìô1024ºÍ49151Ö®¼äµÄÒ»¸ö¶ÀÌصĶ˿ںš£
´¥·¢= {“ÎÔÊҵƔ£º3360¡¢
“ÎÔÊÒÃÔ”£º3361¡¢
“ÎÔÊÒ·çÉȵ͔£º3362¡¢
“ÎÔÊÒÉÈÖД£º3363¡¢
“ÎÔÊÒÉȸß
ÏÂÒ»²½ÎÒÃǸÄд·¨¡£Õâ¾ÍÊÇÿµ±ÊÕµ½ÓïÒôÃüÁî¡£“Ãû×Ö”µÄ˵·¨½«Æ¥ÅäµÄÓïÒôÃû³Æ±íÕÃÊÕµ½£¬ÎÒÃǽ«Ê¹ÓÃÄĸöGPIOÒý½ÅÉèÖᣓ¹ú¼Ò”µÄ˵·¨ÊÇÕæµÄ»ò¼ÙµÄÈ¡¾öÓÚÈç¹ûÓïÒôÃüÁî»ò¹Ø±Õ¡£Ê¹ÓÃÕâÁ½¸öÂ۵㣬ÎÒÃǽ«È·¶¨ÄÄЩ°´Å¥ÐèÒª1ÃëµÄGPIOÒý½ÅÉèÖÃΪµÍѹ£¬È»ºó°ÑËü»Øµ½¸ß¡£µ«Ê×ÏÈÎÒÃÇ´ò¿ªµçÔ´µÄÒ£¿Ø°åͨ¹ýÉèÖÃGPIOÒý½ÅÁ¬½Óµ½¾§Ìå¹Ü¸ß·ÅµÍʱ£¬ÎÒÃǽáÊøÁË¡£
def act(self, client_address, state, name):
print "State", state, "from client @", client_address, "name", name
# Turn RF remote on
GPIO.output(40,1)
# Loop through triggers
if name == "bedroom lights":
GPIO.output(33,0)
time.sleep(1)
GPIO.output(33,1)
elif name == "bedroom fan":
if state:
# using fan low as default for fan on
GPIO.output(35,0)
time.sleep(1)
GPIO.output(35,1)
else:
GPIO.output(38,0)
time.sleep(1)
GPIO.output(38,1)
elif name == "bedroom fan low":
GPIO.output(35,0)
time.sleep(1)
GPIO.output(35,1)
elif name == "bedroom fan medium":
GPIO.output(36,0)
time.sleep(1)
GPIO.output(36,1)
elif name == "bedroom fan high":
GPIO.output(37,0)
time.sleep(1)
GPIO.output(37,1)
GPIO.output(40,0)
return True
Python½Å±¾Íê³É£¬µ«ÎÒÃÇÐèÒªÔÚÆô¶¯Ê±ÔËÐеĸù¡£ÎÒÃÇͨ¹ý½«ÆäÌí¼Óµ½“/etc/rc.±¾µØÎļþ¡£ÄãÖ»Äܱà¼rc.local¸ùËùÒÔ²»ÒªÍü¼Ç“sudo”ʱ´ò¿ªËü¡£ÊäÈëÏÂÃæµÄÏߣ¨S£©µ½rc.localµ«¸Ä±ä·¾¶ºÍ/»òÎļþµ½ÄúµÄPython½Å±¾µÄλÖúÍÎļþÃûÆ¥Åä¡£
#¿ªÊ¼ÎÒÃǵÄfauxmo Python½Å±¾
Python /¼Ò/ PI /Ö÷/ echo-fauxmo-bedroom.py»ØÉù
ÖØÐÂÆô¶¯ºÍPIÊÇ×¼±¸È¥¡£