python控制ITECH艾德克斯程控电源IT6800系列

1、项目研发过程,供产品测试系统使用

2、通讯模块:RS232通讯

3、内容:

        3.1、串口连接

        3.2、电源模式设置

        3.3、通讯命令字拼装和串口写入数据

4、功能实现

        4.1、python创建串口

import serial

def CreateSerial(port, baudrate):
    """
    创建串口
    :param port: type:string 串口号
    :param baudrate: type:string 串口波特率
    :return: type:boolean 返回串口实例
    """

    serialPort = serial.Serial(port, baudrate, timeout=0.05)
    serialPort.setRTS(0)
    serialPort.parity = serial.PARITY_NONE         #无校验
    serialPort.bytesize = serial.EIGHTBITS         #8个数据位
    serialPort.stopbits = serial.STOPBITS_ONE      #1个停止位
    serialPort.set_buffer_size(10240)

    return serialPort

        4.2、设置电源模式

import time

def InitSupply(serialPort):
    serialPort.write(bytes.fromhex("AA 00 20 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 CB"))    #设置电源为远程操作模式(20H,值为01)
    serialPort.write(bytes.fromhex("AA 00 21 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 CC"))    #控制电源输出状态为输出模式(21H,值为01)
    serialPort.write(bytes.fromhex("AA 00 22 C3 50 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 DF"))  # 电压限制50V,C350
    time.sleep(0.3)

        4.3、电压命令字的拼接组装

import struct
import re
 
# 电压串口值转换,Vol为计划输出电压值
def ControlVol(Vol):
    commond0 = "AA 00 23 "
    commond1 = "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00"
    data0 = struct.pack("i", Vol)       #struct.pack将Python的Vol电压值根据格式符“i”,转换为字节流(即字节数组)
    voltage = [hex(Vol)[2:].rjust(2, '0')+' ' for Vol in data0]     #拆解电压值的底字和高字,并转换为十六进制,不足2位补0
    command2 = commond0+ voltage[0]+voltage[1]+voltage[2]+voltage[3]+commond1       #前几个字节先拼装一次
    command3 = sum([int(i, 16) for i in re.split(' ', command2) if i != ''])  #求最后一位校验码
    command4 = hex(command3)[3:].rjust(2, '0')  #校验码尾数不够补0
    command = command2+' '+command4     #所有字节拼装
    serialPort.write(bytes.fromhex(command))        #write从串口发送拼装后的数据

### 关于ITECH电源上位机软件及其控制程序开发 对于ITECH艾德克斯电源设备而言,存在专门设计的程控上位机软件(IT9000_V1.0.1.5_PV6700_V1.0.1.0),此款软件旨在通过计算机实现对电源设备的有效远程控制,特别适合那些依赖精准电力供应管理的应用环境[^2]。 #### 软件特性概述 - **适用范围广泛**:不仅限于实验室内的测试工作,在工业生产和科学研究等多个领域同样表现出色。 - **操作简便灵活**:能够满足不同场合下对于电能质量调节的需求,提供了一个直观易用的操作界面以便用户更好地掌控设备状态。 - **稳定性高效率强**:确保每一次指令传输都准确无误地被执行,从而保障整个系统的正常运转。 #### 开发教程概览 为了帮助开发者更便捷地利用这些工具创建自定义应用,官方提供了详细的文档和技术支持资源: ##### Python 示例代码片段展示如何初始化并配置一个 ITECH IT6722A 设备: ```python import itech_power_supply as ips def setup_device(): device = ips.IT6722A('COM3') # 假设使用 COM3 端口连接到 PC try: device.open() print("Device opened successfully.") # 设置电压和电流参数 device.set_voltage(12) # 单位 V device.set_current_limit(2)# 单位 A print(f"Voltage set to {device.get_voltage()}V, Current limit set to {device.get_current_limit()}A.") finally: device.close() if __name__ == "__main__": setup_device() ``` 上述脚本展示了怎样建立与指定串行端口上的 ITECH IT6722A 的通信链接,并对其进行基本设定。需要注意的是实际环境中可能需要调整具体的端口号以及其他硬件特定属性以匹配实际情况[^3]。 另外还有一份关于解决USB接口无法识别问题以及RS232通讯设置方面的简易指南可供参考,这对于初次接触此类产品的使用者来说非常有帮助[^4]。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值