免费教程速递!虹科手把手教您用工业树莓派做基于Python的PWM控制

news/2024/7/6 5:33:50 标签: 树莓派, python

准备工作

硬件:

虹科工业树莓派1台

DIO模块1个

Windows系统电脑1台

LED电路

软件(PC上):

Chrome内核浏览器、SSH连接软件(如putty)

操作步骤

1.工业树莓派(RevPi)连好DIO模块,连网线、电源线上电。

2.电脑的浏览器打开树莓派所在IP地址,登录其管理后台,账号为admin,默认密码见机身贴纸。

3.打开PiCtory管理界面。

图片

4.按物理设备的左右顺序添加摆放主模块和DIO模块(从左边找到相应的模块,然后拖到右边区域进行摆放)。

图片

5.单击选定摆放好的DIO模块,在网页界面右下角的变量设置区,最下面的位置找到OutputPWMActive和OutputPWMFrequency两个变量。

OutputPWMActive变量长度为16bit,以掩码形式表示DIO模块各DO通道PWM使能情况,某位为1表示该位对应的通道PWM使能,某位为0表示该位只用作普通DO输出,填入框中的数应为十进制数。比方说,如果我只需要第三、第五通道设为PWM,其它仍是直接DO的话,那该变量应设为 00000000 00010100 = 20。此处,我们将该变量设为65535,也就是16bit全为1,表示所有通道PWM功能开启。

而OutputPWMFrequency变量则是选择形式设定的,选项有“40Hz 1%”、“80Hz 2%”等。我们这里所选的是“200Hz 5%”,其意义为PWM频率为200Hz,占空比最小单位是5%。

图片

6.配置完成后点上方菜单的File -> Save as Start-Config. 保存到启动方案,然后点Tools -> Reset Driver立即使配置生效。我们这里做的事情,其实是把这两个变量的复位默认值,改为了我们刚刚设置的参数,而开机复位时会自动读取改默认值。

应当注意:OutputPWMActive变量复位之后通过任何途径修改其当前值是不会生效的,必须要设为复位默认值才能生效!

7.接下来,我们准备使用Python编程来尝试控制DO1通道的PWM。

首先,我们要知道,DO1通道的PWM占空比当前值,是由PWM_1变量决定的,该变量名在同时使用多个DIO模块时会有变化(会自动改名,避免重名),需以PiCtory右下角变量列表中显示的名称为准。

该变量的取值范围是0-100的整数,表示占空比百分比数,复位默认值不修改时各通道均为0。

图片

前面我们提到,当设置PWM频率时,占空比最小单位也会变化,且频率越高时,占空比最小单位越大,但不用担心,即使我们的最小单位是5%,我们在程序中把该变量值设为5倍数以外的数也是不会报错的,系统会自动取最近可用的数进行输出设置。

8.在DO1通道上接上LED电路,限流电阻阻值请按照LED实际规格选取合适的值。

整个LED回路结构为:

DO1 — 限流电阻 — LED — 地

9.现在,我们获取该变量在过程映像中对应的地址(编程时需要通过过程映像中对应的地址来访问读写变量)。先用SSH软件连上RevPi,登录名是pi,默认密码和本文第2步中的密码相同(见机身贴纸)。

10.SSH登录成功后,执行如下指令:

piTest -v PWM_1

图片

返回结果中第二行的offset,即为我们所需要的地址值(十进制83)。

11.有了地址变量之后开始正式编程,我们在SSH中执行命令python3,以进入python环境。命令行开头的前缀变成“>>> ”即表明已进入python环境,按Ctrl+D可退出。

图片

12.测试执行如下代码:

图片

此时,LED应该会以45%亮度亮起,此时再执行:

图片

则LED应以最高亮度亮起。writeByteToOffset函数的第一个参数是写入的地址,第二个参数是写入的值

13.先退出python环境,然后执行如下命令创建名为的python脚本到默认的主目录:

nano PWMtest.py
然后在nano编辑器中填入如下代码:

图片

图片

然后Ctrl+X退出,按Y确认保存,再回车确认名字即可完成脚本创建。这就是一个简单的呼吸灯例程。

14.执行如下指令给刚才创建的脚本添加执行权限

chmod +x PWMtest.py

然后,即可通过如下指令启动脚本:

./PWMtest.py

由于脚本中设置了死循环,退出需要按Ctrl+C。

需要了解更多详情,请联系虹科工业物联网团队:hohuln.com


http://www.niftyadmin.cn/n/1308539.html

相关文章

[工业通讯解决方案]芯片与模块

虹科是一家在工业自动化领域,特别是工业总线通讯行业经验超过10年的高科技公司。虹科工业通讯事业部与世界知名的工业通讯专家【PEAK-System,Hilscher,Kunbus,frenzel berg】等深度合作,提供业内顶尖水平的工业总线协…

【虹科】如何逐跳识别网络问题

首先,让我们定义问题。随着网络变得越来越大,它们变得越来越复杂,但为什么呢?好吧,让我们用道路来比喻。假设您有一条穿过城镇的道路,并且像许多小城镇一样,就在它的中间是一个十字路口。没问题…

虹科案例 | 尽情享受旅途时光!虹科HK-RDL无线技术帮助减少公共安全事故

背景 墨西哥作为热门旅游城市之一,每年都需要接待几千万人次的游客,但每当你在翻阅墨西哥旅游攻略的时候都会看到要注意安全的字样。近年来,墨西哥部分地区因为安全风险高而为人所知,这对他们的旅游业和公共安全造成了严重的负面影…

OPC UA数据转储至数据库分析快人一步!

OPC UA 技术解决工业现场数据通信标准不统一的问题,使得不同操作系统和不同制造商的设备之间可以进行数据交互,是实现工业4.0不可或缺的一环。 前言 虹科 随着社会的快速发展,越来越多的企业开始着手于提高工业现场设备的生产力&#xff0…

【PCAN工程机械应用系列】虹科PCAN卡在隧道挖掘机器电控系统中的应用

应用背景 在隧道挖掘行业,电控系统发挥着至关重要的作用,特别是在一些高端且专业的设备中,如凿岩台车(也叫钻孔台车,是一种隧道及地下工程采用钻爆法施工的凿岩设备)以及隧道湿喷机(主要用于湿…

新品虹科HK-H1000A发布!——带您认识新款射频功率放大器

射频功率放大器 功率放大器是在给定失真率条件下,能产生最大功率输出以驱动某一负载的放大器。功率放大器的原理是利用三极管的电流控制作用或场效应管的电压控制作用将电源的功率转换为按照输入信号变化的电流。射频功率放大器可以广泛应用于雷达、通信、导航、卫星…

【诊断案例】机械正时正确,发动机持续亮故障灯

问诊试车 1.1故障现象 客户描述车辆行驶中发动机故障灯点亮,车辆可以正常行驶,怠速有轻微抖动现象。如下图1-1。 图1-1 1.2故障确认 接车后,踩下制动踏板,按压一键启动按钮后,发动机顺利启动着车。发动机故障灯不熄…

【虹科】Myricom MVA释放高速相机的CPU占用

本文详细介绍了将Myricom NIC和MVA与虹科EVT相机配合使用的优势,MVA获得显着优势的方式,并与Intel Pro 1000 GigEVision NIC和驱动程序的放大版本进行了比较,后者是1 Gigabit 机器视觉应用程序和软件的当前主流选择。 Intel Pro 1000的工作原…