- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
?
?
基于SCPI的可编程线性直流电源的程序设计与研究
?
?
邵娟+王振华
摘要:本文是在基于SCPI之上对可编程线性直流电源进行了程序设计和研究。该线性直流电源以电压和电流为核心,要求有4位0.4”LED电压显示和3位0.4”LED电流显示,并且精确度做到电压±(0.03%的读数+10位)和电流±(0.3%的读数+10位)的输出。数字面板控制和数据保存调取功能,通过USB接口实现了SCPI命令的输入和执行,提高了SCPI的数据采集的通用性、可移植性和可扩展性。
关键词:线性直流电源;SCPI;二叉树链式;三段分析法
一、引言
任何的科学实验都离不开电源,在某些实验中经常会对电压高低、电流大小以及稳定度等都有着特殊的要求,但是目前实验室所用的直流稳压电源多数存在着电压或电流的精度不够,稳定度不高的问题。传统的直流电源一般采用指针式来显示电压值或者电流值,使用电位器来调整电压或电流的输出值,而电位器的阻值特性一般都是非线性的,在调整和使用时是非常不方便的,并伴随着漂移。所设定的电压值或电流值和输出值之前存在的误差,而且输出值精度不高,因此造成所接电路的损坏也经常性的发生。当长时间使用直流电源时,甚至会造成电源的死机。因此,针对以上的这些问题,专门作为一个课题进行研究,保证直流稳压电源良好的性能,可视化的数码管显示,可以调取和存储数据,精度达到小数点后3位,而且要求抗干扰能力强,力求实现智能化、多功能化和美观化。
SCPI即程控仪器标准命令(standardcommandforprograminstrument),它是一种用来控制仪器的命令语言,规定了消息的构造和内容,带有多种标准接口。它以ASCII字符组成的标准仪器命令语言,对于测量仪器的每一个功能,SCPI均定义了特定的命令字符。它最大的优点就是在对仪器编程时仅考虑所需要完成的功能,而不用考虑仪器本身具体的操作过程。以一种标准化的方式解决了软件的兼容性问题,而且简单和方便。
基于SCPI和可编程线性直流电源仪器的特点,将两者有机的结合起来,通过软硬件结合能够实现直流电源的远程控制,并且和其他测试仪器想兼容,保证直流电源的稳定性、智能性、多功能性、兼容性等。
二、基于SCPI的可编程线性直流电源的程序设计
2.1可编程线性直流电源的总体结构
此电源含有数字面板输入控制模块,显示模块,AD转换模块,DA转换模块,电流电压值输出模块,数据存储模块,远程控制模块和智能型温控风扇等。
数字面板输入控制模块通过带指示灯的硅胶按键和旋转编码开关进行数据的输入,显示模块拥有十八个高亮度的LED屏显示,DA转换模块将数字面板所输入的数字值转换为相应的模拟量信号,AD转换模块负责将模拟电路输出的电压或电流信号转换为数字信号,一些状态标志也相应显示在面板上。
2.2可编程线性直流电源的关键流程图
有图1可以看出“电流电压采样值”是整个系统的关键变量:
(1)通过硅胶按键和旋转编码开关输入电流电压设定值,当打开output后经过AD、DA转换得到采样值。
(2)通过CPU输出设定的电流电压采样值。
(3)通过LED显示读取电流电压设定值和电流电压的采样值。
因此本论文将以电流电压采样值为中心进行展开,在Keil开发环境下采用C51语言设计数据语言进行软件的编写和调试。
2.3控制模块
CPU采用Microchip公司的PIC18F85J10,其内部集成了程序存储器和数据RAM,因此可以对程序存储器空间进行寻址,写闪存存储器的程序,实现bootloader功能。Bootloader代码是芯片复位后进入操作系统之前执行的一段代码,主要是完成由硬件启动到操作系统启动的过渡,从而为操作系统提供基本的运行环境。
PIC18F85J10芯片还集成了5个CCP模块和2个MSSP模块,每个模块都可以独立的工作。在电路中17个数码管的显示和93C66外部存储器的DIN和SCLK信号是共用RC4和RC3,RC5作为93C66的输出信号,因此他们可以采用MSSP1模式进行同步发送和接收8位数据。达到数码管的快速显示功能,简化了电子电路的设计。
因为编程和显示的精度要求到达±(0.03%的读数+10位),所以就必须采用高精度的AD和DA模块变换,AD模块采用了AD7792芯片,AD7792是将模拟信号转变成16位的数字信号,刷新速率达到65dB。在电路中AD芯片、DA芯片的DIN和SCLK信号是共用同一个RD4和RD6,即MSSP2,在AD转换中当SCKx出现外部时钟脉冲时发送和接收数据,当最后一位数据被锁存后,中断标志位会置1。这样就可以在中断中进行达到快速转换和数码管显示。
总体结构图
从2图可以看出CPU需要控制的资源有19组LED显示器、12个LED灯、2片AD5545、2片AD779
文档评论(0)