【项目实战】 您所在的位置:网站首页 python路灯开关代码 【项目实战】

【项目实战】

2024-07-14 03:12| 来源: 网络整理| 查看: 265

环境:window10、Python3.7.9

依赖库:pyserial

硬件:220V灯带、220V吊灯、USB双路继电器、电笔

1、安装Python第三方库pyserial

2、清楚插座的零火线(用电笔去测试,灯亮为火线)

3、清楚灯的零火线(一般红线为火线,蓝线为零线)

4、按照下面的电路图接线(继电器的NO端接插座的火线,COM端接等的火线)

NO:常开端

NC:常闭端

COM:公共端

5、USB连接电脑后,需要安装驱动,驱动可以直接找商家拿

6、安装完驱动后,用自带的软件进行测试(指令为16进制的)

注意:上面的串口是驱动安装成功后,会自动识别的,点击上面的按钮就能对继电器进行上下电操作进而控制等的开闭啦

7、利用Python来控制继电器来实现灯的开闭

代码:

# -*- coding: utf-8 -*- import serial import binascii import string import time #打开串口 serialPort="COM5" #串口 baudRate=9600 #波特率 s=serial.Serial(serialPort, baudRate, timeout=0.5) print("参数设置:串口={0} ,波特率={1}".format(serialPort,baudRate)) #收发数据 #n = s.inWaiting() #if n: # data = str(binascii.b2a_hex(s.read(n)))[2:-1] # print(data) #通讯协议 #指令通过16进制形式发送 #数据(1)---启始标识(默认为0xA0) #数据(2)---开关地址码(默认为0x01,标识第1路;0x02标识第2路…依次类推) #数据(3)---操作数据(0x00为关不反馈,0x01为开不反馈,0x02为关并反馈,0x03为开并反馈,0x04为取反并反馈,0x05为查询状态0X06为闪断并反馈) #数据(4)---校验码(前面三个数据加和) #示例 #打开第1路USB开关不反馈:A0 01 01 A2,继电器会吸合,但不会反馈数据 #关闭第1路USB开关不反馈:A0 01 00 A1,继电器会释放,但不会反馈数据 #打开第1路USB开关并反馈:A0 01 03 A4,继电器会吸合,并反馈状态A0 01 01 A2 #关闭第1路USB开关并反馈:A0 01 02 A3,继电器会释放,并反馈状态A0 01 00 A1 #取反第1路USB开关并反馈:A0 01 04 A5,继电器的状态会变化,并反馈最终状态 #关闭第1路USB开关不反馈:A0 01 05 A6,继电器会反馈实时状态 #打开第2路USB开关不反馈:A0 02 01 A3,继电器会吸合,但不会反馈数据 #关闭第2路USB开关不反馈:A0 02 00 A2,继电器会释放,但不会反馈数据 #打开第3路USB开关不反馈:A0 03 01 A4,继电器会吸合,但不会反馈数据 #关闭第3路USB开关不反馈:A0 03 00 A3,继电器会释放,但不会反馈数据 #打开第4路USB开关不反馈:A0 04 01 A5,继电器会吸合,但不会反馈数据 #关闭第4路USB开关不反馈:A0 04 00 A4,继电器会释放,但不会反馈数据 #发送 while(1): d=bytes.fromhex('A0 01 01 A2') s.write(d) print("打开1") time.sleep(2) d = bytes.fromhex('A0 01 00 A1') s.write(d) print("关闭1") time.sleep(2) d=bytes.fromhex('A0 02 01 A3') s.write(d) print("打开2") time.sleep(2) d = bytes.fromhex('A0 02 00 A2') s.write(d) print("关闭2") time.sleep(2) # d=bytes.fromhex('A0 03 01 A4') # s.write(d) # print("打开2") # time.sleep(1) # d = bytes.fromhex('A0 03 00 A3') # s.write(d) # print("关闭2") # time.sleep(1) s.close()

8、相关资源

作品展示:https://www.bilibili.com/video/BV1Wf4y1k7UV?t=9

打包文件(含源码、驱动、说明):

https://pan.baidu.com/s/19my0Kyw92W_f3MBHCl6pTA提取码:6666

 

转载请注明出处,谢谢~~~  

 

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有