您好,欢迎来到保捱科技网。
搜索
您的当前位置:首页C语言论文

C语言论文

来源:保捱科技网


C语言程序设计在传感器中的应用

——以智能温度传感器为例

姓 名: 学 号: 班 级: 指导老师:年

月 日

《C语言程序设计》课程期末论文 2

目 录

1.C语言的概述及特点 1

2传感器的介绍 1

2.1传感器的概述及分类 1

2.1.1传感器的概述 1 2.1.2传感器的分类 2

2.2传感器技术的发展历程及前景 2

2.2.1发展历程 3 2.2.2未来展望 3 2.3传感器的作用 3

3.传感器在生活中的应用 4

3.1传感器在生活中广泛应用 5 3.2.DS18B20智能温度控制器 6

3.2.1温度传感器DS18B20简介 6 3.2.2.DS18B20温度传感器的存储器 7

4课程学习及此次论文写作心得 9

《C语言程序设计》课程期末论文 第1 页

C语言程序设计在传感器中的应用

【摘要】传感器是现代化工业生产领域中不可或缺的一种设备备件,传感器系统更是工业生产实现信息处理和自动化控制的关键部件。传感器的作用是收集外界的物理信息和化学信息,再将这些信息转化为电信号进行传导。传感器比人类感官更优秀的地方在于,传感器的工作灵敏度更高、准确性更高、可靠性更高,这些标准也是传感器设计和制造的标准。传感器在设计和制造中还要兼顾使用寿命、重复实用性、抗环境影响能力等。

【关键词】C语言 ;传感器 ;应用及发展;智能温度控制器

正文:

1.C语言的概述及特点

C语言是一种计算机程序设计语言。它既有高级语言的特点,又具有汇编语言的特点。它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。因此,它的应用范围广泛。C 语言的主要特点有:(1)语言简洁、紧凑,使用方便、灵活;(2)运算符极其丰富;(3)数据结构丰富;(4)允许直接访问物理地址;(5)生成的目标代码质量高,程序执行效率高;(6)可移植性好。

2传感器的介绍

2.1传感器的概述及分类

2.1.1传感器的概述

传感器是自动化系统技术中的关键部件,作为系统中的一个结构组成,其重要性变得越来越明显. 传感器的作用是收集外界的物理信息和化学信息,再将这些信息转化为电信号进行传导。传感器的测量对象可以是固体、液体或气体,被测量对象可以为任何运动状态,即可以为静态也可以为动态。传感器对被测量物体的测量即包括其物理特性也包括其化学特性,例如被测量物体的温度、压力、流速、辐射性及生物特征等。

《C语言程序设计》课程期末论文 第2 页

传感器在使用时会按照自己工作原理,针对被测量对象收集各种状态参数,并将这些收集到的状态参数转化为可用的电学量。传感器的另外一个任务就是将这些电信号进行分离,并传导给传感器接受系统,以完成显示、评测或标示等。

传感器发展至今,在一些对象的测量上尚不及人类的正常感觉能力,但在另外一些领域则已经有了比人类感官更优越的功能,例如在紫外线辐射、红外线辐射、电磁场感应和无色物体的气体感应等。 2.1.2传感器的分类

传感器是实现自动检测和自动控制的首要环节。如果没有传感器对原始参数进行精确可靠的测量,那么无论是信号转换或信息处理,或都最佳数据的显示与控制都是不可能实现的。

一、根据输入物理量可分为:位移传感器、压力传感器、速度传感器、温度传感器及气敏传感器等。

二、根据工作原理可分为:电阻式、电感式、电容式及电势式等。 三、根据输出信号的性质可分为:模拟式传感器和数字式传感器。即模拟式传感器输出模拟信号,数字式传感器输出数字信号。

四、根据能量转换原理可分为:有源传感器和无源传感器。有源传感器将非电量转换为电能量,如电动势、电荷式传感器等;无源程序传感器不起能量转换作用,只是将被测非电量转换为电参数的量,如电阻式、电感式及电容光焕发式传感器等。

2.2传感器技术的发展历程及前景

科技发展的脚步越来越快,人类已经置身于信息时代。而作为信息获取最重要和最基本的技术——传感器技术,也得到了极大的发展。传感器信息获取技术已经从过去的单一化渐渐向集成化、微型化和网络化方向发展,并将会带来一场信息。

《C语言程序设计》课程期末论文 第3 页

2.2.1发展历程

早在上世纪70年代,就出现了将传统传感器采用点对点传输、连接传感控制器而构成传感器网络雏形,我们把它归之为第一代传感器网络。随着相关学科的的不断发展和进步,传感器网络同时还具有了获取多种信息信号的综合处理能力,并通过与传感控制器的相联,组成了有信息综合和处理能力的传感器网络,这是第二代传感器网络。而从上世纪末开始,现场总线技术开始应用于传感器网络,人们用其组建智能化传感器网络,大量多功能传感器被运用,并使用无线技术连接,无线传感器网络逐渐形成。 2.2.2未来展望

无线传感器网络有着十分广泛的应用前景,它不仅在工业、农业、军事、环境、医疗等传统领域有具有巨大的运用价值,在未来还将在许多新兴领域体现其优越性,如家用、保健、交通等领域。我们可以大胆的预见,将来无线传感器网络将无处不在,将完全融入我们的生活。比如微型传感器网最终可能将家用电器、个人电脑和其他日常用品同互联网相连,实现远距离跟踪,家庭采用无线传感器网络负责安全、节电等。无线传感器网络将是未来的一个无孔不入的十分庞大的网络,其应用可以涉及到人类日常生活和社会生产活动的所有领域。

但是,我们还应该清楚的认识到,无线传感器网络才刚刚开始发展,它的技术、应用都还还远谈不上成熟,国内企业应该抓住商机,加大投入力度,推动整个行业的发展。

2.3传感器的作用

人们为了从外界获取信息,必须借助于感觉器官。而单靠人们自身的感觉器官,在研究自然现象和规律以及生产活动中它们的功能就远远不够了。为适应这种情况,就需要传感器。因此可以说,传感器是人类五官的延长,又称之为电五官。

《C语言程序设计》课程期末论文 第4 页

新技术的到来,世界开始进入信息时代。在利用信息的过程中,首先要解决的就是要获取准确可靠的信息,而传感器是获取自然和生产领域中信息的主要途径与手段。

在现代工业生产尤其是自动化生产过程中,要用各种传感器来监视和控制生产过程中的各个参数,使设备工作在正常状态或最佳状态,并使产品达到最好的质量。因此可以说,没有众多的优良的传感器,现代化生产也就失去了基础。

在基础学科研究中,传感器更具有突出的地位。现代科学技术的发展,进入了许多新领域:例如在宏观上要观察上千光年的茫茫宇宙,微观上要观察小到 cm的粒子世界,纵向上要观察长达数十万年的天体演化,短到 s的瞬间反应。此外,还出现了对深化物质认识、开拓新能源、新材料等具有重要作用的各种极端技术研究,如超高温、超低温、超高压、超高真空、超强磁场、超弱磁砀等等。显然,要获取大量人类感官无法直接获取的信息,没有相适应的传感器是不可能的。许多基础科学研究的障碍,首先就在于对象信息的获取存在困难,而一些新机理和高灵敏度的检测传感器的出现,往往会导致该领域内的突破。一些传感器的发展,往往是一些边缘学科开发的先驱。

传感器早已渗透到诸如工业生产、宇宙开发、海洋探测、环境保护、资源调查、医学诊断、生物工程、甚至文物保护等等极其之泛的领域。可以毫不夸张地说,从茫茫的太空,到浩瀚的海洋,以至各种复杂的工程系统,几乎每一个现代化项目,都离不开各种各样的传感器。由此可见,传感器技术在发展经济、推动社会进步方面的重要作用,是十分明显的。

3.传感器在生活中的应用

随着科学技术的进一步发展,单凭人的感觉器官来获取信息已远远不能满足需要,于是人们研制了各种传感器,使人类获取信息的领域更宽广、更深入。

人用感觉器官来获取外界的信息通过神经传送给大脑,进行分析处理后,指挥行为动作。如果把人体看作是一个信息系统的话,那么眼、耳、鼻、舌、皮肤等感觉器官就是这个信息系统的传感器。

《C语言程序设计》课程期末论文 第5 页

3.1传感器在生活中广泛应用

随着科学技术的进一步发展,单凭人的感觉器官来获取信息已远远不能满足需要,于是人们研制了各种传感器,使人类获取信息的领域更宽广、更深入。传感器是通过测量外界的物理量化学量来捕捉和识别信息,并将被测量的非电学量转成电学量的装置。它一般包括敏感元件与转换电路等。其中,敏感元件是传感器的核心它可以利用各种物理、化学、生物效应,将非电学参数的变化转换成电学参数的变化。转换电路将敏感元件采集的信息进行处理,并输出数字信息,以电压或电流的形式输出。

随着现代信息技术和传感器技术的发展,传感器开始进入中学实验的课堂。用传感器替代传统的电表、温度计、测力计等测量仪器,能够把包括力、热、声、光、电、磁、原子物理等多种物理量数据采集器处理后的数据上传到计算机,由专门的科学软件进行实时的处理与分析。20世纪70年代,随着信息技术和计算机技术的发展,传感器技术迈入了快速发展时期。我国将传感器技术列为重点发展的尖端技术,投入大量人力物力,研制和开发了各种新型的传感器。传感器技术已经深入到日常生活、生产、科学研究和军事技术等各个领域。2003年,当SARS肆虐时,在机场、车站等公共场所都配备了红外测温仪。这是一种将红外辐射波转换成电信号的传感装置,能够非接触快速测温,可帮助机场、车站工作人员快速检测旅客体温,而又不会造成交叉感染。在数码摄像器材中,使用了一种新型的敏感元件,叫做电荷耦合器件它能将光信号转换成模拟电信号。模拟电信号再通过一种专门的装置——A/D转换器就可转换为数字电信号,以便于计算机处理。处理后的信号可根据需要储存或发送出去。机动车驾驶员酒后驾车,极易发生交通事故,严重危害交通安全和人身安全。怎样才能判定驾驶员酒后驾车呢?人饮酒后,酒精通过消化系统被人体吸收,经血液循环,因此测量呼气中的酒精含量就可以判断饮酒程度。我国已制成对低浓度有高灵敏性的酒精传感器。交通使用这样的酒精传感器,就能迅速检查出机动车驾驶员是否酒后驾车。

传感器在现代生活中应用的例子还有很多,如:1.自动门,利用人体的红外微波来开关门;2.烟雾报警器,利用烟敏电阻来测量烟雾浓度,从而达到报警目的;3.手机,数码相机的照相机,利用光学传感器来捕获图象;4.电子称,利用

《C语言程序设计》课程期末论文 第6 页

力学传感器(导体应变片技术)来测量物体对应变片的压力,从而达到测量重量目的;5.水位报警,温度报警,湿度报警,光学报警等。

3.2.DS18B20智能温度控制器

3.2.1温度传感器DS18B20简介

DALLAS最新单线数字温度传感器DS18B20简介新的“一线器件”体积更小、适用电压更宽、更经济 Dallas 半导体公司的数字化温度传感器DS1820是世界上第一片支持 “一线总线”接口的温度传感器。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。DS18B20、 DS1822 “一线总线”数字化温度传感器 同DS1820一样,DS18B20也 支持“一线总线”接口,测量温度范围为 -55°C~+125°C,在-10~+85°C范围内,精度为±0.5°C。DS1822的精度较差为± 2°C 。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。与前一代产品不同,新的产品支持3V~5.5V的电压范围,使系统设计更灵活、方便。而且新一代产品更便宜,体积更小。 DS18B20、 DS1822 的特性 DS18B20可以程序设定9~12位的分辨率,精度为±0.5°C。可选更小的封装方式,更宽的电压适用范围。分辨率设定,及用户设定的报警温度存储在EEPROM中,掉电后依然保存。DS18B20的性能是新一代产品中最好的!性能价格比也非常出色! DS1822与 DS18B20软件兼容,是DS18B20的简化版本。省略了存储用户定义报警温度、分辨率参数的EEPROM,精度降低为±2°C,适用于对性能要求不高,成本控制严格的应用,是经济型产品。 继“一线总线”的早期产品后,DS1820开辟了温度传感器技术的新概念。DS18B20和DS1822使电压、特性及封装有更多的选择,让我们可以构建适合自己的经济的测温系统。

光刻ROM中的位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。位光刻ROM的排列是:开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。

《C语言程序设计》课程期末论文 第7 页

DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位。

这是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。 3.2.2.DS18B20温度传感器的存储器

DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的E2RAM,后者存放高温度和低温度触发器TH、TL和结构寄存器。

暂存存储器包含了8个连续字节,前两个字节是测得的温度信息,第一个字节的内容是温度的低八位,第二个字节是温度的高八位。第三个和第四个字节是TH、TL的易失性拷贝,第五个字节是结构寄存器的易失性拷贝,这三个字节的内容在每一次上电复位时被刷新。第六、七、八个字节用于内部计算。第九个字节是冗余检验字节。

根据DS18B20的通讯协议,主机控制DS18B20完成温度转换必须经过三个步骤:每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求主CPU将数据线下拉500微秒,然后释放,DS18B20收到信号后等待16~60微秒左右,后发出60~240微秒的存在低脉冲,主CPU收到此信号表示复位成功。

读取温度时主要是根据如下C语言编制程序进行: ReadTemperature(void) {

unsigned char a=0;

《C语言程序设计》课程期末论文 第8 页

unsigned char b=0; unsigned char t=0; Init_DS18B20();

WriteOneChar(0xCC); // 跳过读序号列号的操作 WriteOneChar(0x44); // 启动温度转换 Init_DS18B20();

WriteOneChar(0xCC); //跳过读序号列号的操作

WriteOneChar(0xBE); //读取温度寄存器等(共可读9个寄存器) 前两个就是温度

a=ReadOneChar(); //读取温度值低位 b=ReadOneChar(); //读取温度值高位

a=a>>4; //低位右移4位,舍弃小数部分 t=b<<4; //高位左移4位,舍弃符号位 t=t|a; return(t); }

void display_tempmain(unsigned char i) //主程序温度显示函数 {

P0=tab[i/10]; shi=0; ge=1; delay(1000); P0=tab[i%10]; shi=1; ge=0; }

void main(void) {unsigned int temp;

《C语言程序设计》课程期末论文 第9 页

while(1) //主循环 { temp=ReadTemperature(); display_tempmain(temp);

4课程学习及此次论文写作心得

通过学习C语言程序设计这门课程,我觉得对自己有很大提高:知道了自己的操作能力有待提高,明白了自己的弱项,才能有所改进,有所提高,从而也为我今后的学习起到一定程度的帮助。我第一次感受到了编程不是像高数算题那样,你只要 解出来就行,编程是一项非常烦琐周密的活动,他不但需要一个人周密的思考问题的能力,处理问题的能力,还需要有足够的耐心,并且来不得半点马虎。编错一个代码,少一个标点符号都有可能影响程序的运行,因此,在学习课程以及平常编写程序的时候都必须认认真真对待,不能有得过且过的心理,不仅上课要认真听讲,还要加强自己动手操作能力,只有这样才懂得其中的奥妙。

通过这次写论文,让我初步掌握了写论文的基本格式、基本方法,学会了怎样去借鉴别人的方法和经验,知道如何去查找资料和整合处理这些资料的能力,这为以后的论文写作打下了一个初良好的基础。

传感器的不断发展和进步为人类的现代化、自动化系统发展提供了保证,传感器在未来的应用也将不断继续。传感器相关技术的研究,已经被世界各国公认为是国家综合科技能力的标志,可见传感器在未来的科学技术发展中还将占据重要的位置 参考文献:

[1]陈艾.敏感材料与传感器[M].北京:高等教育出版社.

[2]Stephen Prata著,技桥工作室译,《C Primer Plus》(第四版),人民邮电出版社,2003-2。

[3]高晓蓉.传感器技术[M].成都:西安交通大学出版社.

[4]《C语言程序设计》,姚合生 蔡庆华等编著,清华大学出版社,2008年 [5]Al Kelley, Ira Pohl著,《A Book on C: Programming in C》(第四版),机械工业出版社,2004-1。

[6]王立柱.C/C++与数据结构.北京:清华大学出版社,2002

[7]于庆广.可编程控制器原理及系统设计.北京:清华大学出版社.2004

《C语言程序设计》课程期末论文 第10 页

[8]郭芹.对高职高专计算机专业程序设计教学的思考.中国科技信息.2008 (1 ) [9]赵茂泰.智能仪器原理及应用[M].北京:电子工业出版社 [10]王元庆.新型传感器原理及应用[M].北京:机械工业出版社

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- baoaiwan.cn 版权所有 赣ICP备2024042794号-3

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务