本文采用Protel 99 SE软件设计系统进行PCB板的设计,Mp lab进行系统仿真
4 数控电流源的单片机程序实现
本文所采用的PIC16F877A单片机是MICROCHIP公司开发的新产品,具有FLASH编程的功能,可以直接在单片机上进行如暂停CPU执行,观察寄存器内容等操作,是目前应用最广泛的一种PIC单片机。
单片机程序所要实现的功能是:独立键盘对PIC16F877A单片机输入数据,PIC16F877A单片机对获得的数据进行处理,并送到10位数模转换器TLC5615,实现对电流的控制。
在这里采用的是C语言编程,其优点是编写代码效率高、软件调试直观、维护升级方便、代码的重复利用率高、便于跨平台的代码移植等。主程序流程图如图2所示。
5 系统测试
本设计要求输出电流范围为0.2A-1A,恒流源模块采样电阻两端电压为200mV-2000mV,由电压值可以推算出数模转换模块的参考电压|Vref|至少为2V(Vref<0)。本设计的Vref=-2.15V,输出端模拟电压范围为(0-12)V,所以输出电流为0.2A-1A。设计要求在0.2A-1A内任意预值,本设计通过键盘输入电流值送单片机,单片机根据输入的键值,将模拟量转换为数字量送给数模转换电路,然后输出模拟量。部分电流值及其对应的理论和实际的数字量如表1所列。其中对应理论码值为输入电流对应数模转换所需要的码值,实际码值为单片机根据输入电流值处理后送到数模转换器的码值。
表1所列的测试结果表明,本设计输出的最大误差为当输入电流为32mA时,输出电流为33mA,误差为1mA。而题目中发挥部分要求输出电流变化的绝对值≤输出电流的0.1%+1mA,即1.032,所以本设计测量出来的误差值达到了设计要求规定的误差值。
6 结论
本文所设计的数控电流源采用PID算法实现了量程可选、输出可调、步进精确、纹波电流极小的功能,而且可将输出电流预置值、实测值在LED上同时显示。人机接口采用独立键盘及LED显示器,控制界面直观、简洁,具有良好的人机交互性能。其具有控制灵活,系统升级方便,控制系统的可靠性提高,易于标准化,系统维护方便、一致性好、成本低,生产制造方便等优点。