shakugan9291 发表于 2015-3-20 20:58:49

实现树莓派通过YEElink控制继电器

只要达成这样的效果就行了,内有视频
http://blog.csdn.net/qigenhuochai/article/details/17661845

由于Yeelink平台的更新,此方法已经不行了,求大神能设计下
由于本人在国外,设备都有,只需要代码以及教程就行了,学生党希望价格不要太高,也感觉这个对大神来说并不难

无名族 发表于 2015-3-26 21:00:21

shakugan9291 发表于 2015-3-20 20:59
补充:最好是通过PYthon实现,非常感谢!

前几天买了个继电器,搞了下,代码贴下,连接12引脚,10秒监听一次。python需要requests模块。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import RPi.GPIO as GPIO
import requests
import json
import time

def main():
    GPIO.setwarnings(False)
    GPIO.setmode(GPIO.BOARD)
    GPIO.setup(12, GPIO.OUT)
    GPIO.setup(12, GPIO.OUT)
    #GPIO.output(12, GPIO.HIGH)
    while True:
      print u'监听开关状态...'
      status()
      time.sleep(10)
      #GPIO.output(12, GPIO.HIGH)
      #time.sleep(1)
      #GPIO.output(12, GPIO.LOW)
      #time.sleep(1)
      
def status():
    apiurl = 'http://api.yeelink.net/v1.1/device/****/sensor/****/datapoints'
    apiheaders = {'U-ApiKey': '************************', 'content-type': 'application/json'}
    tmp = requests.get(apiurl, headers=apiheaders)
    switch = tmp.json()
    #print switch
    if switch['value'] == 1:
      print("开关打开...")
      if (GPIO.input(12) == 0):
            GPIO.output(12, GPIO.HIGH)
    else:
      print("开关关闭...")
      if (GPIO.input(12) == 1):
            GPIO.output(12, GPIO.LOW)
   
if __name__ == '__main__':
    main()

shakugan9291 发表于 2015-3-20 20:59:31

补充:最好是通过PYthon实现,非常感谢!

树老大 发表于 2015-3-20 23:40:39

有时间的大神,帮一帮哦。

shakugan9291 发表于 2015-3-27 07:57:21

无名族 发表于 2015-3-26 21:00
前几天买了个继电器,搞了下,代码贴下,连接12引脚,10秒监听一次。python需要requests模块。

非常感谢你的帮助!

shakugan9291 发表于 2015-4-12 05:28:28

无名族 发表于 2015-3-26 21:00
前几天买了个继电器,搞了下,代码贴下,连接12引脚,10秒监听一次。python需要requests模块。

不好意思,还要麻烦你一下,我在试验时出了个问题,具体情况是:程序运行时,在网页打开开关后,程序也确实收到了开的状态,但是继电器却没灯亮,在网页开关关了后,程序也收到了关的状态,表现却是灯凉一下就灭了。请问我是不是哪里出了问题?谢谢!

无名族 发表于 2015-4-14 15:02:57

shakugan9291 发表于 2015-4-12 05:28
不好意思,还要麻烦你一下,我在试验时出了个问题,具体情况是:程序运行时,在网页打开开关后,程序也确 ...

根据描述推断,你的继电器可能是低电平触发,你所说的灯是否是LED,如过是LED需要在正极串联合适的电阻来限制电流,否则会因电流过大烧掉。

shakugan9291 发表于 2015-4-15 03:47:46

无名族 发表于 2015-4-14 15:02
根据描述推断,你的继电器可能是低电平触发,你所说的灯是否是LED,如过是LED需要在正极串联合适的电阻来 ...

你好,请问低电平触发的话是不是小改下代码就行了?还需要注意些什么吗?
灯是指继电器上的指示灯,还没有连LED,谢谢您的提醒
页: [1]
查看完整版本: 实现树莓派通过YEElink控制继电器