实验环境:PT8.2
实验目标:通过实验了解基于PT8.2门的控制方法
实验拓扑:
实验过程:
设备准备
(1)门增加以太网口模块
(2)设备IP地址配置
server | PC | IoT | |
IP地址 | 192.168.25.1 | 192.168.25.2 | 192.168.25.3 |
子网掩码 | 255.255.255.0 | 255.255.255.0 | 255.255.255.0 |
(3)服务器IoT服务开启及账号注册(admin/admin)
物联网设备注册
在IoT完成设备注册
(1)IoT的服务地址192.168.25.1
(2)账号密码:admin/admin
3.设备控制
(1)程序运行
PT8.2中程序通过JavaScript和Python两种语言和Visual实现。
IoT默认提供了JavaScript和Python两种语言的程序,可以运行其中一个。
本实验中的IoT是门有两个操作,首先是门锁的状态,锁或者未锁;再次,门有两种状态,开或者关。当门锁是锁的状态,门则无法开;党门锁是未锁的状态,门可以打开。
(2)设备控制
通过ALT+鼠标方式,点击锁所在位置,锁的状态在unlock和lock之间切换;
通过ALT+鼠标方式,点击门的任何位置,当锁是unlock时门的打开,再点击门关闭。在IoT服务器中可以看到门和锁的变化。
(3)程序控制
为了了解门的变化状态,在MCU中编写main.py程序。
在IoT的specifications中了解到门和锁的控制如下。
Data Specifications:
Message Format: [door],[lock]
door: 0 = closed, 1 = open, -1 = don't care
lock: 0 = unlock, 1 = lock, -1 = don't care
为此用customWrite函数时,customWrite(0, "0,0");#第一个0为IoT的第一端口,“0,0”中的第一个0为门的状态,第二个0为锁的状态。
为此编写如下程序main.py
from gpio import *
from time import *
def main():
while True:
customWrite(0, "0,0");#门关,锁开.
delay(1000);
customWrite(0, "0,1");#门关,锁关.
delay(1000);
customWrite(0, "1,0");#门开,锁开
delay(1000);
customWrite(0, "1,1");#门开,锁关
delay(1000);
if __name__ == "__main__":
main()
到此基于PT8.2门的实验完成,动手感受一下吧。
不足之处敬请批评指正:qhedu@139.com或者私信。
2023年2月6日