返回顶部
首页 > 资讯 > 后端开发 > Python >基于Python和JavaScript怎样编写物联网温度计程序
  • 201
分享到

基于Python和JavaScript怎样编写物联网温度计程序

2024-04-02 19:04:59 201人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章将为大家详细讲解有关基于python和javascript怎样编写物联网温度计程序,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Zerynth作为A

这篇文章将为大家详细讲解有关基于pythonjavascript怎样编写物联网温度计程序,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

Zerynth作为AndroidiOS手机端应用程序,在物联网项目中,可以对图形界面进行快速原型设计。

借助Zerynth可以把任何手机作为智能对象加入控制器组成物联网系统。尤其是通过建立双向通信信道,可以管理和控制与它连接的手机设备。

我们将介绍使用单片机微控制器连接Zerynth,开发一个简单但强大的物联网温度计。

准备工作

首先你需要一块电路板,选择 Zerynth支持的32位微控制器设备 即可。我们选择的是 Flip&Click Mikroelektronika  ,它拥有许多和Arduino平台产品一样的属性,其中就包括作为Arduino Due核心的32位AT91SAM3X8E微芯片。

接着选择带有温度(HTS221)和相对湿度传感器的 Temp&Hum Click 来测量温度。

然后采用 WiFi PLUS Click 将电路板连接到互联网, WiFi PLUS Click  具有MRF24WB0MA-2.4GHz特性,能兼容IEEE std  802.11微芯片模块,并且是车载tcp/IP栈和802.11连接管理器匹配的MCW1001的控制器。

 Zerynth下载也是最重要的一点,你需要

组装物联网温度计

Flip&Click是Arduino的衍生品,一方面它属于Arduino产品,但另一方面,你会发现它身上包含“单机电路板”才有的四个开放mikroBUS套接字的模块。从本质上讲,这些模块是组装Arduino原型的附加模块,但如果缩减去掉,Flip&Click也能勉强适用,只是需要在电路板上的A槽和B槽分别加入Temp&Hum和Wifi  Plus clicks。

使用Python来编程物联网温度计

参考示例

一旦你 安装Zerynth Studio 并 创建Zerynth用户 ,就可以克隆“Zerynth应用示波器”示例。请参考以下 学习如何克隆一个示例  。

基于Python和JavaScript怎样编写物联网温度计程序

main.py

  1. ################################################################################  

  2. # IoT Thermometer  

  3. ################################################################################  

  4. from wireless import wifi

  5. # this example is based on Particle Photon  

  6. # change the following line to use a different wifi driver  

  7. from broadcom.bcm43362 import bcm43362 as wifi_driver  

  8. import streams  

  9. import adc  

  10. # Import the Zerynth APP library  

  11. from zerynthapp import zerynthapp  

  12. streams.serial()  

  13. sleep(1000)  

  14. print("STARTING...")  

  15. try:  

  16. # Device UID and TOKEN can be created in the ADM panel  

  17. zapp = zerynthapp.ZerynthApp("DEVICE UID", "DEVICE TOKEN", log=True)  

  18. # connect to the wifi network (Set your SSID and passWord below)  

  19. wifi_driver.auto_init() 

  20.  for i in range(0,5):  

  21. try:  

  22. wifi.link("SSID",wifi.WIFI_WPA2,"PASSWORD")  

  23. break  

  24. except Exception as e:  

  25. print("Can't link",e)  

  26. else:  

  27. print("Impossible to link!")  

  28. while True:  

  29. sleep(1000)  

  30. # Start the Zerynth app instance!  

  31. # Remember to create a template with the files under the "template" folder you just cloned  

  32. # upload it to the ADM and associate it with the connected device  

  33. zapp.run()  

  34. # Read ADC and send values to the ADM  

  35. while True:  

  36. sleep(1000)  

  37. x = (adc.read(A4)*100)//4096  

  38. zapp.event({"data":x})  

  39. if x>95:  

  40. # send mobile notification  

  41. # (there is a limit of one notification per minute per device on the ADM sandbox)  

  42. zapp.notify("ALARM!","The value is greater than 95!")  

  43. except Exception as e:  

  44. print(e) 

这个示例中,Zerynth将从相连的电路板获取的数据转变成可视化的图形示波器,这些模拟传感器的数据通过“模拟”pin A4产生。

导入正确的wifi驱动程序和传感器库

正如你在注释中看到的,示例是基于 粒子光子板 和wifi驱动的。想要使用WiFi Plus Click,必须修改以下几行:

from broadcom.bcm43362 import bcm43362 as wifi_driver

修改为

from microchip.mcw1001a import mcw1001a as wifi_driver

同时

wifi_driver.auto_init()

修改为

wifi_driver.init(SERIAL2,D24) # slot B

为了使用Temp&Hum Click温度传感器,需要添加以下几行代码来导入库并设置传感器,这些可以在 帮助文档 里面看到。

# Import the HTS221 library  from stm.hts221 import hts221  temp_hum = hts221.HTS221(I2C0, D21) # sl

同时为了读取到传感器,有必要编写下面一行。

tmp, hum = temp_hum.get_temp_humidity() # Read tmp and hum

设置SSID名称和密码

当然,你还需要编辑想要连接的wifi网络的SSID名称和密码:

wifi.link("SSID",wifi.WIFI_WPA2,"PASSWORD")

创建并设置一个连接设备

现在我们要创建一个“连接装置”以便关联“zerynth”的实例。请看下面截图中的步骤。查看 文档 了解更多的技术细节。

基于Python和JavaScript怎样编写物联网温度计程序

设备的证书(UID和TOKEN)可以从开发工具Zerynth Studio的ADM面板直接复制粘贴过来。

“IP”是Zerynth ADM的IP地址。当网络驱动不支持主机名解析时填写的这些参数可以派上用场。

基于Python和JavaScript怎样编写物联网温度计程序

创建、上传和设置模板

Zerynth可以直接运行由htmlCSS和JavaScript构成的漂亮的图形用户界面,根本不需要Android或iOS代码!

此外,每个装置的图形界面托管于 Zerynth ADM sandbox  ,并由一些列可在App上加载并显示的HTML5、Javascript、Css和图片文件组成。Zerynth添加模板后 ADM Javascript库  允许应用程序与连接设备互相通信。

单击相应的“Plus”图标来添加模板。

基于Python和JavaScript怎样编写物联网温度计程序

然后从包含模板目录上传模板。注意,你可以修改模板定义文件“index.html”进行自定义。这里我们保留原样。

基于Python和JavaScript怎样编写物联网温度计程序

部署脚本

经过几次修改后,代码大概是这样:

 # Zerynth App Oscilloscope    from wireless import wifi  from microchip.mcw1001a import mcw1001a as wifi_driver  import streams import adc  streams.serial()  # Import the Zerynth APP library  from zerynthapp import zerynthapp  # Import the HTS221 library  from stm.hts221 import hts221  temp_hum = hts221.HTS221(I2C0, D21) # slot A  sleep(1000)  print("STARTING...")  try:  # Device UID and TOKEN can be created in the ADM panel  zapp = zerynthapp.ZerynthApp("DEVICE UID", "DEVICE TOKEN",ip = "178.22.65.123", log=True)  # connect to the wifi network (Set your SSID and password below)  wifi_driver.init(SERIAL2,D24) # slot B  for i in range(0,5):  try:  wifi.link("SSID",wifi.WIFI_WPA2,"PASSWORD")  break  except Exception as e:  print("Can't link",e)  else:  print("Impossible to link!")  while True:  sleep(1000)  # Start the Zerynth app instance!  # Remember to create a template with the files under the "template" folder you just cloned  # upload it to the ADM and associate it with the connected device  zapp.run()  # Read the sensor and send values to the ADM  while True:  sleep(1000)  tmp, hum = temp_hum.get_temp_humidity() # Read tmp and hum  print("Temp is:", tmp, "Humidity is:", hum)  try:  zapp.event({"data":tmp})  except Exception as e:  print(e)  if tmp>30:  # send mobile notification  # (there is a limit of one notification per minute per device on the ADM sandbox)  try:  zapp.notify("ALARM!","High Temperature!")  except Exception as e:  print(e)  except Exception as e:  print(e)

切记“设备UID”、“设备令牌”、“名称”和“密码”必须符合自己的参数。

编写完成即可 部署脚步到你的设备 。

在Zerynth应用上查看物联网温度计仪表板

在这个 极简教程 里,你只需打开Zerynth应用,登录并选择指定的设备即可查看对应的物联网温度计指示板。Zerynth也可以通过连接设备接收  推送通知 。比如当温度大于阈值时,就会出现通知。

关于基于Python和JavaScript怎样编写物联网温度计程序就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

--结束END--

本文标题: 基于Python和JavaScript怎样编写物联网温度计程序

本文链接: https://lsjlt.com/news/86104.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 基于Python和JavaScript怎样编写物联网温度计程序
    这篇文章将为大家详细讲解有关基于Python和JavaScript怎样编写物联网温度计程序,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Zerynth作为A...
    99+
    2024-04-02
  • 如何通过VSCode RTOS插件使用Python为物联网系统编写程序
    本篇文章给大家分享的是有关如何通过VSCode RTOS插件使用Python为物联网系统编写程序,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。RTOS 之类的实时嵌入式操作系统...
    99+
    2023-06-16
  • 基于Python怎么编写一个微博抽奖小程序
    本篇内容主要讲解“基于Python怎么编写一个微博抽奖小程序”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“基于Python怎么编写一个微博抽奖小程序”吧!开发工具Python版本:3.7.8相关...
    99+
    2023-06-30
  • 计算机网络中怎么样将高级语言编写的程序翻译成机器语言程序
    小编给大家分享一下计算机网络中怎么样将高级语言编写的程序翻译成机器语言程序,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!将高级语言编写的程序翻译成机器语言程序,可采用两种翻译方式:编译和解释。解释方式是将源程序逐句解释执行...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作