工业中一般仪器仪表的输出信号都为4-20mA电流,指最小电流为4mA,最大电流为20mA 。 因为远距离传输信号的时候,要考虑到导线上也有电阻,如果用电压传输则会在导线上产生一定的压降,那接收端的信号就会产生一定的误差了,所以使用电流信号作为标准传输更合适一些。
该模块输入0-100%占空比的PWM信号,能够输出0-20mA的电流。
名称 | 推荐购买链接(或者您可以自己制作) |
---|---|
4-20mA电流输出模块(可输出0-20mA) | 模块购买链接 |
声明:这里推荐的购买链接仅供参考,您完全可以去其他商家或渠道购买,只要功能相似即可,如果需要更低的成本建议自己开发硬件模块或定制。
我们利用Ubeeto物联网开发板提供的PWM库函数来输出PWM信号输入给电流输出模块(0%-%100占空比的PWM信号),电流输出模块输出的电流大小取决于输入PWM信号的占空比,0%对应0mA的输出,100%对应20mA的输出。所以我们可以换算出,100%占空比的PWM对应的电流输出为20mA,这个换算关系在下面的代码中会使用上。
--配置D0口为PWM功能,参数1000表示PWM的周期为1000us,即PWM频率为1Khz,参数0表示低电平有效 LIB_PwmConfig1(1000,0) --开始大循环 while(GC(1) == true) do --每隔3秒切换一次PWM占空比,即变更一次输出电流值 LIB_DelayMs(3000) LIB_PwmUpdate1(200) --PWM占空比为20%,即输出电流4mA LIB_DelayMs(3000) LIB_PwmUpdate1(600) --PWM占空比为60%,即输出电流12mA end
如果感兴趣,上面代码中出现的LIB开头的库函数可以在API文档中通过Ctrl+F查询。
简单、快捷、高效、强大的物联网开发板
© 2022. All Rights Reserved. 粤ICP备2021058065号