你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

如何在Python中编程粒子电子(Cellular IoT)

[复制链接]
点点&木木 发布时间:2019-2-1 13:55
这展示了如何使用Python编程粒子电子来开发蜂窝连接电子产品,只需点击几下。
1.jpg

硬件组件
粒子电子  ×1      
介绍
在本文中,我们将看到如何使用Zerynth对Python中的粒子电子进行编程,只需点击几下即可开发出与蜂窝连接的电子项目和产品。

粒子电子平台
Particle Electron是一个支持GSM的开发平台,用于创建具有M2M的蜂窝连接电子项目和产品。它配备了一个ParticleSIM卡,可在全球100多个国家/地区提供服务,其中包括3个月的Particle的物联网设备每月1MB数据计划。

Particle Electron将功能强大的ARM CortexM3微控制器(STM32F205RG Cortex M3)与UBlox(U260或G350)的3G / 2G gsm模块相结合。除了具有1Mb内部闪存用于存储固件外,粒子电子还具有128kRAM和120 MHz时钟。

粒子电子板总结
微控制器:ARM 32位Cortex™-M3 CPU内核
工作电压:3.3V
输入电压:3.6-6V
数字I / O引脚(DIO):28
模拟输入引脚(ADC):14
模拟输出引脚(DAC):1
UART:5
SPI:2
I2Cs:1
CAN:1
闪存:1Mb
SRAM:128 KB
时钟速度:120Mhz
蜂窝调制解调器:U-Blox SARA U系列(3G)
电路板尺寸:2.0“x 0.8”x 0.3“(0.5”包括接头)
粒子电子引脚和相关的Zerynth特征
入门所需材料
来自粒子商店:

粒子的数据计划
粒子电子板
粒子SIM卡
来自Zerynth:

Zerynth工作室
项:

锂电池(2000mAh)
USB电缆
Electron配备由BQ24195 pm单元和MAX17043电量计供电的板载电源管理电路。电子可以通过VIN(3.9V-12VDC)引脚,USB Micro B连接器或LiPo电池供电。仅使用LiPo电池供电时,电源管理IC会关闭内部稳压器,并直接从电池为系统供电。

连接并虚拟化粒子电子
如果您尚未完成,请下载并安装Zerynth Studio 。

然后将电路板连接到PC。在Windows机器上,Zerynth Studio需要粒子电子USB驱动程序来访问与STM32 UART建立连接的串行端口。有关ZerynthDoc部分的更多详细信息。

按照以下步骤注册和虚拟化粒子电子:

将电子设备置于DFU模式(设备固件升级):

按住BOTH按钮(重置和设置)
按住设置按钮的同时仅释放重置按钮
等待LED开始闪烁洋红色,然后变黄
松开设置按钮; 设备现在处于DFU模式(黄色闪烁LED)
在“设备管理”工具栏上选择“电子”
单击Zerynth Studio中的“Z”按钮注册设备
第二次单击“Z”按钮为设备创建虚拟机
第三次单击“Z”按钮虚拟化设备
用Python编写粒子电子
虚拟化之后,粒子电子就可以编程并上传Zerynth脚本了。

让我们从“HTTP Time GSM示例”示例开始,以显示粒子电子的功能。

只需按照以下步骤操作(有关详细信息,请参阅此入门指南):

通过快捷键Ctrl + P 访问快速搜索栏(此处有更多信息)并输入“GSM HTTP”

选择示例并通过单击专用按钮克隆它;
在此阶段,Zerynth Studio在新项目中转换示例,使您可以编辑标题和描述。请记住,Zerynth Studio不允许两个项目具有相同的名称。如果您尝试克隆过去已经克隆的示例而保留默认标题,则需要为此新项目提供不同的标题。
点击“创建”,你就完成了!

代码
Zerynth - HTTP时间GSM示例:
################################################################################
#
# HTTP Time GSMExample
#
################################################################################

# the classicwifi requests example, very little changes accessing
# the net througha gsm connection!

# import ourgsm chip specific driver
from ublox.g350 import g350
# and thegeneric gsm module
from wireless import gsm
import streams
import requests


streams.serial()

# init the gsmdriver!
# The driverautomatically registers itself to the gsm interface
# with thecorrect configuration for the selected board
g350.auto_init()
print("Connecting...")
try:
    # connect to our APN
    gsm.connect_net('spark.telefonica.com')
exceptException as e:
    print("ooops, something wrong while connecting  : (", e)
    while True:
        sleep(1000)

# from now oneverything is exactly identical to wifi HTTP Time Example ;)

# let's try toconnect to timeapi.org to get the current UTC time
for i in range(3):
    try:
        print("Trying to connect...")
        # we need to impersonate a web browser: as easy assetting the http user-agent header
        user_agent= {"user-agent":"Mozilla/5.0(iPad; U; CPU OS 3_2_1 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, likeGecko) Mobile/7B405"}
        # go get that time!
        # url resolution and http protocol handling are hiddeninside the requests module
        response= requests.get("http://www.timeapi.org/utc/now",headers=user_agent)
        # let's check the http response status: if different than200, something went wrong
        print("Http Status:",response.status)
        # if we get here, there has been no exception, exit theloop
        break
    exceptException as e:
        print(e)


try:
    # check status and print the result
    if response.status==200:
        print("Success!!")
        print("-------------")
        print("And the result is:",response.content)
        print("-------------")
exceptException as e:
    print("ooops, something very wrong! : (",e)

现在你必须上传代码。

只需从“设备管理工具栏”中选择虚拟化设备,单击Zerynth Studio的专用“上行链路”按钮,然后在询问时按“重置板载”按钮重置设备。

完成!现在您可以看到串行监视器上打印的结果了!

省电
节能是蜂窝网络物联网成功的关键。

蜂窝物联网技术最重要的挑战之一是如何最大限度地延长电池寿命。为了满足此规范,Zerynth在Zerynth StudioPRO版本(6月28日开始)中包含了“省电”功能,其中还包括以下功能:

可选择的RTOS
Over the Air更新开发
硬件驱动的安全固件在工业产品上烧毁
还有很多
您还有几天可以预订Zerynth Studio PRO,享受高达50%的折扣!


原理图
2.jpg

收藏 评论1 发布时间:2019-2-1 13:55

举报

1个回答
一代睡神的崛起 回答时间:2019-2-1 17:50:03
学习一下

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版