Haas-HD1(RTU) ADC使用说明(测电压,电流)

最新案例教程点击下方链接跳转,CSDN已停止更新

点击跳转HaaS506官方最新案例







案例说明

本案例用于说明如何使用ADC测量供电电压,测量电流传感器的电流大小。
Haas-HD1(RTU)带有3路ADC。

  • 内置ADC
ADC0用于测量供电电压大小
  • 外置ADC
ADC1AI1端口默认用于4~20mA电流检测(通过调整硬件可用于测量电压值,如需测量电压购买时备注说明)
ADC2AI2端口默认用于4~20mA电流检测(通过调整硬件可用于测量电压值,如需测量电压购买时备注说明)

在这里插入图片描述

代码

配置3路ADC

  • board.json
{
    "version": "1.0.0",
    "io": {
      "ADC0": {
        "type": "ADC",
        "port": 0,
        "sampling": 12000000
      },
      "ADC1": {
          "type": "ADC",
          "port": 1,
          "sampling": 12000000
      },
      "ADC2": {
        "type": "ADC",
        "port": 2,
        "sampling": 12000000
      }
    },
    "debugLevel": "ERROR",
    "repl":  "enable" ,
    "replPort":0
}

  • main.py
from driver import ADC
import utime as time


#电源电压
def get_support_voltage():
    value="%.4f" %(adc0.readVoltage()/1000*11)
    return float(value)


#AI1,AI2电流值
def get_ai_current_value():
    value1="%.4f" %(adc1.readVoltage()/150)
    value2="%.4f" %(adc2.readVoltage()/150)
    # print("current value of ai:",value1,value2)    
    return float(value1),float(value2)



if __name__ == '__main__':   
    adc0 = ADC()
    adc1 = ADC()
    adc2 = ADC()
    adc0.open("ADC0")
    adc1.open("ADC1")
    adc2.open("ADC2")
    while True:
        supply_v = get_support_voltage()
        ai1,ai2 = get_ai_current_value()
        print('电源电压: ',supply_v)
        print('AI1电流:{},AI2电流:{}.'.format(ai1,ai2))
        time.sleep(1)


测试结果

电压

  • 使用手机充电器供电
    在这里插入图片描述

  • 12V电源测试
    在这里插入图片描述

电流

用信号发生器模拟电流信号。连线如下

信号发生器RTU
AIoAI2+
GNDAI2-

在这里插入图片描述

测试结果如下,连接AI2之后,电流4.98mA。
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值