温度传感器是指能感受温度并转换成可用输出信号的传感器。温度传感器是温度测量仪表的核心部分,品种繁多。按测量方式可分为接触式和非接触式两大类,按照传感器材料及电子元件石英晶振特性分为热电阻和热电偶两类。传感器广泛应用于社会发展及人类生活的各个领域,如工业自动化、农业现代化、航天技术、军事工程、机器人技术、资源开发、海洋探测、环境监测、安全保卫、医疗诊断、交通运输、家用电器等。
由于数字式集成温度传感器可以简化电路设计和提高抗干扰能力,所以本系统选用数字芯片DSl8B20,它是美国 DALLAS公司推出的单总线温度传感器,可用数据线供电,电压范围33~55V,只有3个引脚,无需外加AD转换器即可输出9~12位的数字量,温度测量范围为-55℃~+125℃,测温分辨率为05℃,采用单总线协议,对其的各种操作通过一条数据线便可完成与单片机的双向通讯。
每一片DS18B20具有全球唯一的序列号,多个DS18B20可以并联在唯一的单总线上,实现多点测温。本系统中DS18B20是用于测量恒温晶体振荡器的工作环境温度,因此在PCB布局时一定要将其放置在恒温晶振附近,越近测量出来的温度就越接近晶振的实际工作环境温度。
3.3软件总体设计
该系统的软件应该包括两部分:一部分是FPGA的软件,另外一部分是单片机的软件。软件部分采用 Verilog硬件描述语言以及C语言编写。因为FPGA部分的软件一旦下载配置,此时FPGA就成为实现确定逻辑功能的硬件芯片了。因此在总体软件设计里,暂不考虑FPGA软件程序,于是,总体软件设计就只涉及到单片机部分的软件。
单片机是整个系统的控制协调中心,同时它还是数据信息处理中心,系统总体软件设计流程图如图3.2所示。
首先在上电后,单片机应该初始化整个系统。初始化的先后顺序应该有确定的关系:首先初始化单片机,包括初始化看门狗、时钟、串口、液晶显示、中断设置和IO口的工作模式,然后下载配置FPGA芯片及初始化其他外围设备。
初始化之后,整个系统就进入正常工作状态,此时如果单片机的O口接收到经FPGA传递过来的时间间隔测量数据,即触发IO口中断,例如GPS输出的有效lPPS信号的检测和初始触发分频信号等:串口通信接口接收GPS信息,并判断信号是否有效;单片机执行数据处理程序,结合AD转换的数值计算GPS接收机的lPS信号与OCXO经分频后输出的秒信号不同步部分的时间间隔数值,对该数值进行 Kalman滤波,消除IPPS信号抖动的影响。接着根据滤波后的时间间隔数值用PIID算法对晶体振荡器的进行频率校正的数字控制量,输出到频率校正模块,达到控制石英晶体振荡器输出频率的目的。
3.4小结
本章主要介绍了恒温晶振自适应驯服保持系统总体设计方案。重点介绍了方案的各个模块和实施的要点问题,硬件的选择以及软件的总体实现,为下一章各模块的详细设计奠定了基础。