当前位置:首页 > 单片机 > 单片机
[导读]前言  热误差是数控机床的最大误差源,数控机床的温度测试为机床热误差的补偿提供依据。传统的测温方案是将模拟信号通过电缆远距离传输至数据采集卡进行A/D转换并处理,实用中必须解决长线传输和模拟量传感器布线等

前言

  热误差是数控机床的最大误差源,数控机床的温度测试为机床热误差的补偿提供依据。传统的测温方案是将模拟信号通过电缆远距离传输至数据采集卡进行A/D转换并处理,实用中必须解决长线传输和模拟量传感器布线等问题。本文介绍了一种新型的设计方案,控制器采用SAMSUNG公司的32位ARM微控制器S3C44BOX,温度传感器采用单总线数字温度传感器DS18B20。采用数字温度传感器即在测试点完成了信号的数字化,提高了传输的可靠性,同时简化了外围电路,也便于传感器在机床上的布置安装。ARM处理器控制数字温度信号的采集,并与上位PC机通讯,同时其他硬件资源提供热补偿系统其他功能。本文在介绍数字温度传感器DS18B20的基础上,给出了系统的软硬件设计方案,对软件实现中的关键点做了详尽的注释说明。

1 数字温度传感器DS18B20介绍

  1.1 DS18B20的结构

  DS18B20是美国DALLAS公司推出的一种可组网数字温度传感器。DS18B20只有一个数据输入/输出口,是单总线专用芯片。DS18B20工作时,被测温度值直接以单总线的数字方式传输。

  DS18B20体积小,电压适用范围宽(3V-5V),可以通过编程实现9~12位的温度读数,即有可调的温度分辨率。测温范围-55℃~+125℃,在-10℃~+85℃时,精度为±0.5℃。其可选封装有TO-92、SOIC及CSP封装。

  每个DS18B20出厂时都有一个唯一的64位序列号,因此一条总线上可以同时挂接多个DS18B20而不会出现混乱。

  DS18B20包括一个暂存RAM和一个E2RAM。暂存存储器RAM用于存放工作参数和测量值,其作用是保证在单线通讯时的完整性,包括8个字节。E2RAM用于设定非易失性温度报警上下限值TH和TL(调电后依然保存)。内部结构如图1所示。

图1 DS18B20内部存储器结构

  头两个字节表示测得的温度读数,数据格式如图2所示:

图2 温度字节的位定义

  S=1时表示温度为负,S=0时表示温度为正,其余低位以二进制补码形式表示,最低位为1,表示0.0625℃内部存储器的第五个字节是结构寄存器,主要用于温度值的数字转换分辨率。

  1.2 DS18B20的工作时序

  DS18B20严格遵循单总线协议,工作时,主机先发一复位脉冲,使总线上的所有DS18B20都被复位,接着发送ROM操作指令,使序列号编码匹配的DS18B20被激活,准备接受下面的RAM访问指令。RAM访问指令控制选中的DS18B20工作状态,完成整个温度转换,读取等工作。在ROM命令发送之前,RAM命令命令不起作用。表1列出了所有操作命令。

表1 指令系统表

  整个操作主要包括三个关键过程:主机搜索DS18B20序列号、启动在线DS18B20做温度转换、读取温度值。

  其工作流程如图3:


图3 工作流程图

  DS18B20对时序及电特性参数要求较高,必须严格按照DS18B20的时序要求去操作。它的数据读写主要由主机读写特定的时间片来完成,包括复位(初始化)、读时间片和写时间片。

  (1)复位时序

  使用DS18B20时,首先需将其复位,然后才能执行其它命令。复位时,主机将数据线拉为低电平并保持480μs~960μs,然后释放数据线,再由上拉电阻将数据线拉高15~60μs,等待DS18B20发出存在脉冲,存在脉冲有效时间为60~240μs,这样,就完成了复位操作。其复位时序如图4所示。

图4 复位时序

  (2)“写”时序

  在主机对DS18B20写数据时,先将数据线置为高电平,再变为低电平,该低电平应大于1μs。在数据线变为低电平后15μs内,根据写“1”或写“0”使数据线变高或继续为低。DS18B20将在数据线变成低电平后15μs~60μs内对数据线进行采样。要求写入DS18B20的数据持续时间应大于60μs而小于120μs,两次写数据之间的时间间隔应大于1μs。写时隙的时序如图5所示。“读”时序机理类似,不再赘述。


图5 “写”时序



2 系统软硬件设计

  2.1 硬件设计

  我们采用的控制器是SAMSUNG公司的32位ARM微控制器S3C44BOX,是三星公司为一般应用提供的高性价比和高性能的微控制器的解决方案,功耗小,可靠性高。它使用ARM7TDMI核,工作在66MHz。采用的该ARM控制器将服务于整个热误差补偿系统,完成包括数据处理与通讯、控制等多任务的实现。机床测温系统只使用小部分片上资源。

  我们主要通过对I/O引脚的电平读写来完成单总线的通讯,采用ARM内部的定时器产生中断来完成有时隙要求的工作。由于我们通过预分频后产生的计时值单位达到1μs,完全能够满足时序工作的需要。

  DS18B20与控制器的接口及其简单,只需将DS18B20的信号线与控制器的一位双向端口连接即可。系统连接如图6所示:


图6 系统连接图

  2.2 软件设计

  遵循DS18B20单总线通讯协议,温度转换与读取工作的软件流程可表示为图7(该流程是在已经选中激活某个选中的DS18B20以后,选中激活流程软件原理类似,此处省略)。

图7 软件程序框图

可见,与DS18B20进行通讯主要完成以下三个基本子程序:初始化程序(复位程序)、‘读’子程序,‘写’子程序。系统采用 C语言进行设计,以下是初始化(复位)子程序,设计如下:

  调用该初始化程序就可以实现复位要求。“读”子程序、“写”子程序实现机制类似,代码不再赘述。在单总线协议下,通过调用这几个子程序进行相应的控制,就能完成主机与DS18B20的通讯,实现温度的采集。

3 结论

  本系统接口电路简单,通讯可靠,集成后的系统运行良好,测试精度高,试验证明能完成预定测试任务。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

为了赶超云计算市场上的竞争对手,谷歌正试图通过定制的Arm服务器芯片降低云计算服务成本。

关键字: 谷歌 ARM 定制芯片

嵌入式开发作为一个融合了计算机软硬件和系统工程的综合性领域,其成功与否往往取决于三个核心要素的有效整合与协调。这三个要素分别是:硬件平台的选择与设计、软件开发及其优化、以及系统级的设计与集成。深入理解并熟练掌握这三个方面...

关键字: 嵌入式开发 ARM

DS18B20是常用的数字温度传感器,其输出的是数字信号,具有体积小,硬件开销低,抗干扰能力强,精度高的特点。

关键字: ds18b20 温度传感器 数字信号

随着汽车软件数量爆发式的增长,整个行业都需要重新思考汽车产品的开发流程。为此,Arm推出了丰富的硬件IP、新的系统IP,以及全新的汽车计算与计算子系统产品路线图,旨在为各种汽车应用实现性能、功能安全、可扩展等方面的支持。

关键字: ARM 汽车电子

知名移动芯片设计公司ARM最近迈出重要一步,它正式推出汽车芯片设计。ARM推出的芯片设计方案名叫Neoverse,随同芯片一起推出的还有面向汽车制造商、汽车供应商的新系统。

关键字: ARM 汽车芯片 芯片

随着通用人工智能的发展,数据中心的计算需求逐步提高。针对多模态数据、大模型的推理和训练需要更高的算力支持,而随着算力提升与之而来的还需更关注在功耗方面的优化。对于头部云计算和服务厂商而言,针对专门用例提高每瓦性能变得至关...

关键字: ARM 服务器 AI Neoverse CSS

一直以来,riscv架构都是大家的关注焦点之一。因此针对大家的兴趣点所在,小编将为大家带来riscv架构的相关介绍,详细内容请看下文。

关键字: riscv ARM riscv架构

最新消息报道,知情人士透露Arm近日裁掉了中国70多名软件工程师,并会将部分职位转移到中国以外的地区。Arm通过“全球服务”部门已经将支持其中国客户的工作外包给安谋科技,该部门曾经拥有约200名员工。

关键字: ARM 裁员

凭借着在个人计算机领域的广泛应用打下的坚实基础,X86自始至终统治着整个服务器生态。而这并不是业界希望看到的,因此Arm服务器被给予厚望。业界期盼Arm能够带来新的服务器CPU替代:打破一个同质化的数据中心架构,实现更高...

关键字: ARM 服务器 AI

本文中,小编将对64位处理器予以介绍,如果你想对它的详细情况有所认识,或者想要增进对它的了解程度,不妨请看以下内容哦。

关键字: 处理器 ARM AMD
关闭
关闭