智能仪器设计实例


组合化设计方法的优点
③维修方便快捷。模块大量采用LSI 和VLSI芯片,在故障出现时,只需更换 IC芯片或功能模板,修理时间可以降低 到最低限度。 ④功能模板可以组织批量生产,使 质量稳定并降低成本。
4.仪器工艺结构与造型设计要求 总体结构的安排、部件间的 连接关系、面板的美化等都必须 认真考虑,最好由结构专业人员 设计,使产品造型优美、色泽柔 和、外廓整齐、美观大方。
二、智能仪器的设计原则
1、从整体到局部(自顶向下)的 设计原则 在硬件或软件设计时,把复杂的、 难处理的问题,分为若干个较简单的、 容易处理的问题,然后再一个个地加 以解决。
第二,软件:采用模块化设计方法, 不仅易于编程和调试,也可减小软件 故障率和提高软件的可靠性。同时, 对软件进行全面测试也是检验错误排 除故障的重要手段。
3.便于操作和维护
在仪器设计过程中,应考虑操作方 便,尽量降低对操作人员的专业知识 的要求,以便产品的推广应用。仪器 的控制开关或按钮不能太多、太复杂, 操作程序应简单明了,从而使操作者 无需专门训练,便能掌握仪器的使用 方法。

“开放系统”的设计思想

向用户不断变化的特殊要求开 放,在服务上兼顾通用的基本 设计和用户的专用要求等等。
开放式系统设计的具体方法
基于国际上流行的工业标准微机总线
结构,针对不同的用户系统要求,选 用相应的有关功能模块组合成最终用 户的应用系统。 系统设计者将主要精力放在分析设计 目标,确定总体结构,选择系统配件 等方面,而不是放在部件模块设计及 用于解决专用软件的开发设计上。
第八章 智能仪器的设计原则及研制
智能仪器的研制开发是一个较为复杂的过程。 为完成仪器的功能,实现仪器的指标,提高研 制效率,并能取得一定的研制效益,应遵循正 确的设计原则、按照科学的研制步骤来开发智 能仪器。
一、智能仪器设计的基本要求 二、智能仪器的设计原则 三、智能仪器的研制步骤
一、智能仪器设计的基本要求
无论仪器的规模多大,其基本设计要求大 体上是相同的,在设计和研制智能仪器时必须 予以认真考虑。
1、功能及技术指标应满足要求
主要技术指标:精度、测量范围、工作环境条
件、稳定性。
应具备的功能:输出、人机对话、通信、
报警提示、仪器状态的自 动调整等功能。
2.可靠性要求
仪器可靠性是最突出也是最重要的,因为
在电子工业和计算机工业中推行 一种不同于传统设计思想的所谓“开 放系统”的设计思想。
“开放系统”的设计思想
在技术上兼顾今天和明天,既从 当前实际可能出发,又留下容纳 未来新技术机会的余地; 向系统的不同配套档次开放,在 经营上兼顾设计周期和产品设计, 并着眼于社会的公共参与,为发 挥各方面厂商的积极性创造条件;
3.便于操作和维护
智能仪器还应有很好的可维护性, 为此,仪器结构要规范化、模块化, 并配有现场故障诊断程序,一旦发生 故障,能保证有效地对故障进行定位, 以便更换相应的模块,使仪器尽快地 恢复正常运行。
4.仪器工艺结构与造型设计要求
仪器结构工艺是影响可靠性 的重要因素,首先要依据仪器工作 环境条件,是否需要防水、防尘、 防爆密封,是否需要抗冲击、抗振 动、抗腐蚀等要求,设计工艺结构; 仪器的造型设计亦极为重要。
组合化设计方法及优点
开放式体系结构和总线系统技术发展,导
致了工业测控系统采用组合化设计方法 的流行,即针对不同的应用系统要求,选 用成熟的现成硬件模板和软件进行组合块化是实现最佳系 统设计的关键。
组合化设计方法的优点
①将系统划分成若干硬、软件产品的 模块,由专门的研究机构根据积累的经验 尽可能完善地设计 , 并制定其规格系列, 用这些现成的功能模块可以迅速配套成各 种用途的应用系统 , 简化设计并缩短设计 周期。 ②结构灵活,便于扩充和更新,使系 统的适应性强。在使用中可根据需要通过 更换一些模板或进行局部结构改装以满足 不断变化的特殊要求。
2、较高的性能价格比原则
智能仪器的造价,取决于研制 成本、生产成本、使用成本。 设计时不应盲目追求复杂、 高级的方案。在满足性能指标的前 提下,应尽可能采用简单成熟的方 案,意味着元器件少,开发、调试、 生产方便,可靠性高。
2、较高的性能价格比原则
就第一台样机而言,主要的花费 在于系统设计、调试和软件开发, 样机的硬件成本不是考虑的主要因 素。当样机投入生产时,生产数量 越大,每台产品的平均研制费就越 低,此时,生产成本就成为仪器造 价的主要因素。显然,仪器硬件成 本对产品的生产成本有很大影响。
仪器能否正常可靠地工作,将直接影响测
量结果的正确与否,也将影响工作效率和
仪器信誉,在线检测与控制类仪器更是如
此,由于仪器的故障造成整个生产过程的
混乱,甚至引起严重后果。应采取各种措
施提高仪器的可靠性,从而保证仪器能长
时间稳定工作。
第一,硬件:仪器所用器件的质量和仪器结 构工艺是影响可靠性的重要因素,故应合 理选择元器件和采用在极限情况下进行试 验的方法。所谓合理选择元器件是指在设 计时对元器件的负载、速度、功耗、工作 环境等技术参数应留有一定的余量,并对 元器件进行老化和筛选。而极限情况下的 试验是指在研制过程中,一台样机要承受 低温、高温、冲击、振动、干扰、烟雾等 试验,以保证其对环境的适应性。
二、智能仪器的设计原则
设计人员根据仪器功能和 设计要求提出仪器设计的总任务, 并绘制硬件和软件总框图(总体 设计)。然后将任务分解成一批 可独立表征的子任务,这些子任 务还可以再向下分,直到每个低 级的子任务足够简单,可以直接 而且容易地实现为止。
二、智能仪器的设计原则
这些低级子任务可采用某些通 用模块,并可作为单独的实体进 行设计和调试,从而能够以最低 的难度和最高的可靠性组成高一 级的模块。
2、较高的性能价格比原则
使用成本,即仪器使用期间 的维护费、备件费、运转费、管 理费、培训费等。必须在综合考 虑后才能看出真正的经济效果, 从而做出选用方案的正确决策。
3.组合化与开放式设计原则
在科学技术飞速发展的今天,设计智能 仪器系统面临三个突出的问题: (1)产品更新换代太快; (2)市场竞争日趋激烈; (3)如何满足用户不同层次和不断变化的要求。
合集下载

智能仪器实验指导书

智能仪器实验指导书

智能仪器实验指导书Revised on November 25, 2020《智能仪器》实验报告实验项目实验时间同组同学班级学号姓名2014年4月实验一多路巡回数据数据采集系统一、实验目的1.学习模/数(A/D)转换的工作原理。

2.掌握芯片ADC0809与微控制器接口电路的设计方法。

3.掌握芯片ADC0809的程序设计方法。

二、实验设备1.实验用到的模块有“SMP-201 8051模块”、“SMP-204 译码模块”、“SMP-101 8位A/D模块”、“SMP-401 静态显示模块”。

2.短的20P、40P数据线各一根。

3.长的一号导线3根,转接线一根。

三、实验原理ADC0809芯片是一种8位采用逐次逼近式工作的转换器件。

它带有8路模拟开关,可进行8路模/数转换,通过内部3-8译码电路进行选通。

启动ADC0809的工作过程:先送信道号地址到A、B、C三端,由ALE信号锁存信道号地址,选中的信道的模拟量送到A/D转换器,执行语句 MOVX @DPTR,A产生写信号,启动A/D转换。

当A/D转换结束时,ADC0809的EOC端将上升为高电平,执行语句MOVX A,@DPTR产生读信号,使OE有效,打开锁存器三态门,8位数据就读到CPU中,A/D转换结果送显示单元。

编程时可以把EOC信号作为中断请求信号,对它进行测试,用中断请求或查询法读取转换结果。

实验原理参考图1-1。

图1-1 多路巡回数据数据采集系统实验原理图本实验中ADC0809的8位模拟开关译码地址为:IN0= 8800H IN1= 8801HIN2= 8802H IN3= 8803HIN4= 8804H IN5= 8805HIN6= 8806H IN7= 8807H四、实验内容步骤1.将“SMP-201 8051模块”和“SMP-204 译码模块”分别插放到“SMP-2 主控制器单元”挂箱的CPU模块接口和译码模块接口上,将“SMP-101 8位并行AD模块”插放到“SMP-1 信号转换单元”挂箱的A/D转换模块接口上,将“SMP-401 静态显示模块”插放到“SMP-4键盘与显示单元”的显示模块接口上。

第7章 智能仪器的设计与调试

第7章  智能仪器的设计与调试
(4)成本低。仪器系统使用的功能模块,一般为批量 生产,成本低而且性能稳定,因此组合成的系统成本也较低。
第7章 智能仪器的设计与调试
7.1.2 设计一台智能仪器的一般过程如图7-1所示,主要分为
三个阶段。第一阶段,确定设计任务,并拟定设计方案;第 二阶段,硬件和软件设计;第三阶段,系统调试及性能测试。 下面简要介绍各阶段的工作内容和设计任务。
第7章 智能仪器的设计与调试
2.软件、硬件协调原则 智能仪器的某些功能(如逻辑运算、定时、滤波)既可通过硬 件实现,也可通过软件完成。硬件和软件各有特点,使用硬件可以 提高仪器的工作速度,减轻软件编程任务。但仪器成本增加,结构 较复杂,出现故障的机会增多。以往人们在智能仪器设计中,过多 地着眼于降低硬件成本,尽量“以软代硬”。随着LSI (LargeScaleIntegration)芯片功能增强、价格下降,这种情况正在 发生着变化。哪些设计子任务应该“以硬代软”,哪些应该“以软代 硬”,要根据系统的规模、功能、指标和成本等因素综合考虑。一 般的原则是,如果仪器的生产批量较大,应该尽可能压缩硬件投入, 用“以软代硬”的办法降低生产成本。此外,凡简单的硬件电路能 解决的问题不必用复杂的软件取代;反之,简单的软件能完成的任 务也不必去设计复杂的硬件。在具体的设计过程中,为了取得满意 的结果,硬件与软件的划分需要多次协调和仔细权衡。
第7章 智能仪器的设计与调试
当仪器总体方案和选用的微处理器种类确定之后,采用 “自顶向下”的设计原则,把仪器划分成若干个便于实现的 功能模块。仪器中有些功能模块既可以用硬件实现,也可以 用软件实现,设计者应该根据仪器的性能价格比、研制周期 等因素对硬件和软件的选择做出合理安排。在对仪器硬件和 软件协调之后,作出仪器总体硬件功能框图和软件功能框图。

基于STM32的通用智能仪表设计及实现

基于STM32的通用智能仪表设计及实现

1系统设计STM32微型处理器用的是Cortex-M3内核,外面的接口非常多,主频高达72MHz,它是一种能远程控制的仪器,CAN能被广泛应用到很多行业,优点很多。

如功能强大、可靠性高、技术先进且成本合理等。

CAN总线可以支持多主,通信率高达1Mbit/s(间离小于20m),用这种方式来布置线路,方便性和可靠性大幅度增强。

下图就是智能仪表的设计图。

2关键硬件设计STM32可以用在很多设备上,可以根据用途,选择合适的科学的硬件要求。

这种系统还有一个强大的功能是能裁剪,我们可以按照需求对硬件进行调整,找出适合我们,经济实惠的进行使用。

2.1核心处理器核心处理器使用STM32F103VC,内核是功能强大的32位RISC,工作频率为72MHz,内部安装高速的存储器,能够增强I/O的端口并能连接到两条APB的总线;有三个十二位的ADC,能够提供十五种采样通道或者多种模式;DMA控制器的通道很多,高达十二个,能持的外设种类更多;还包括四个十六位的定时器与两个PWM 定时器;通信标准接口很多,工业领域非常适合;带4个片选的灵活的静态存储器控制器,支持SD卡、SRAM、PSRAM、NOR和NAND存储器;提供并行LCD接口,兼容8080/6800模式;采用LQFP100封装,提供80个GPIO;除了模拟输入I/O,其他管脚可以承受5V信号输入;供电范围非常宽,两伏到三点六伏之间,还有能编程的电压检测器,让整个系统的工作更稳定,抗干扰能力更强,把温度传感器与内部ADC直接相连,能更简便的监测器件周围的环境;最适合的温度是四十到一百零五摄氏度,达到工业生产中的应用需求。

2.2抗干扰设计内部建设也重要。

每种电路里面含有两种类型的信号,一类是模拟信号,另一类是数字信号。

两类中抗干扰能力最强的是数字信号,但是噪音很大,它就成了模拟信号的主要噪声源,因此要重视两种信号的隔离与去耦。

用5V电源输入,要在输入端加入相应的去耦电容。

智能仪器课程设计报告

智能仪器课程设计报告

天津电子信息职业技术学院传感器技能实训课题名称智能温度测温系统姓名王先民学号20班级电信S10-1专业电子信息工程技术所在系电子技术系指导教师岑永祚完成日期2011年12月11日一、 主要内容温度传感器DS18B20采集环境模拟信号,其输出送入AT89C51,单片机在程序的控制下,将处理过的数据送到移位寄存器74LS164,经74LS164输出后驱动三位数码管显示。

当被测温度高于18℃时,单片机发出控制信号使降温电扇以自然风的形式旋转,温度越高转速越快,温度36℃以上时风扇全速工作,点亮此功能指示灯。

二、 基本要求(1)设计测量温度范围-55℃~+125℃的智能测温系统,要求数码管实时显示测量温度,单片机根据温度高低确定风扇转速 (2)画出程序框图(3)有完整的整机电路图(protel 绘制)(4)完成格式正确、内容完整的实验报告三、 参考文献王祁, 智能仪器设计基础.北京:机械工业出版社,2009目录一、前言 (4)二、系统组成 (4)1、设计思路 (5)2、系统的性能指标: (5)3、系统的主要功能: (5)三、电路组成及工作原理 (5)1、温度传感器功能模块 (6)2、AT89C51单片机 ........................................................................................................ 8 3、74LS164移位寄存器 .. (12)4、晶振电路 (12)5、复位电路 ................................................................................................................... 13 6、键盘电路 . (13)7、显示电路 (14)8、稳压电路 ................................................................................................................... 14 9、显示电路 . (15)10、风扇控制电路 (15)四、课程设计心得与体会 (16)五、参考文献 (16)六、整机电路图 (17)七.心得体会 (18)智能温度测量系统的设计一、前言温度是一种基本的环境参数,人民的生活与环境的温度息息相关,在工业生产过程中需要实时测量温度,在农业生产中也离不开温度的测量。

智能仪器课程设计

智能仪器课程设计

智能仪器课程设计课程设计名称3位半数字电压表学生姓名、学号谭彩铭(0501170118)指导教师牛国柱2009-1-16课程设计要求设计一3位半直流数字电压表,满足下列要求1、量程为20mV,200mV,2V,20V,200V,测量精度要求0.1%2、3位半数码显示3、工作状态显示4、开机自检5、配简单键盘,如量程切换6、配微型打印机接口由实际操作中遇到的问题找解决方案实际搭建的数字电压表的量程为20mV,200mV,2V和8V,能完成量程的自动切换,并有各种量程状态以及超、欠量程的指示灯显示。

原理图附录一所示。

对应的完整汇编程序见附录三。

1 原理图总体思路由于采用3位半AD转换器TC14433,提供的基准电压为2V,可测电压量程为2V,故大于2V的待测电压衰减后输入,小于2V的待测电压放大后输入。

衰减和放大由51单片机控制控制模拟开关4051,4052来完成。

调试当中,发现若输入电压为负时,比例放大就不准确了,且相差较大,故又用运放和模拟开关搭建了一反相控制电路。

原理图当中,U15为用OP07搭建的电压跟随器,用于增大输入阻抗,减小输出阻抗,以减少对待测电压的影响。

U16为用OP07搭建的一反相器。

U1用于若发现待测电压为负,让待测电压反相后进入后续电路。

U6作用同U15。

U1用于控制是否将待测电压衰减1/4后进入后续电路。

U4和U7用于控制是否对电压进行衰减以及衰减多少。

U17作用同U15。

U2为用MC1403搭建的2V电压源,用于输出较准确的电压源给TC14433作为基准电压。

2 AD转换部分TC14433中,EOC与DU端相连,选择连续工作方式。

EOC与51单片机的中端口0相连,由中断方式采集数据。

中断0采集数据服务子程序如图2所示。

3 升降量程及量程状态指示灯显示程序控制升降量程即控制模拟开关4051和4052,是否对待测电压进行放大或衰减。

如何有效的控制量程的自动转换是一较难点,尤其是保证程序的健壮性。

智能仪表设计实例

智能仪表设计实例
分解成可独立表征的 一批子任务:单独的实体进行设计和调试
子任务分解:
足够简单容易实现
低级子任务:
采用通用模块
最低的难度 最高的可靠性
2.较高的性能价格比原则
仪表的造价:研制成本、生产成本、使
用成本。
设计时不盲目追求复杂、高级的方案。
在满足性能指标的前提下,应尽可能采 用简单成熟的方案,意味着元器件少, 开发、调试、生产方便,可靠性高。
一、基本要求 二、设计原则 三、研制步骤
一、智能仪表设计的基本要求
无论仪表的规模多大,其基本设计 要求大体上是相同的,在设计和研制 智能仪表时必须予以认真考虑。
1. 技术(经济)指标及功能 2. 可靠性 3. 便于操作和维护 4. 工艺结构与造型设计
1.技术指标及功能应满足要求 主要技术指标:
精度、分辨能力、测量范围、
采用功能强的芯片以简化电路
修改和扩展,硬件资源需留有足够的余地


自诊断功能,需附加设计有关的监测报警电路
硬件抗于扰措施 线路板注意与机箱、面板的配合,接插件安排 等问题,必须考虑到安装、调试和维修的方便
软件设计研制:
软件设计作一个总体规划,选择平台
程序功能块划分
确定算法
分配系统资源和设计流程图 编写代码 程序调试和纠错、各部分程序连接及系
统总调
3.仪表综合调试及整机性能测试
系统调试,以排除硬件故障和纠正软件错误, 并解决硬件和软件之间的协调问题。 硬件调试
静态调试 动态调试
查板、电源、 芯片
测试软件
测试程序
软件调试
初级子程序调试
模块程序调试
不需要调用其它 子程序
监控程序调试

智能化仪器原理及应用(第三版)课件:智能型温度测量仪


智能型温度测量仪
在RAM区中还开辟了4个通用工作寄存区, 共有32个通 用寄存器, 可以适用于多种中断或子程序嵌套的情况。 在MCS-51系列单片机内部, 还有1个由直接可寻址位组 成的布尔处理机, 即位处理机。 指令系统中的位处理指 令专用于对布尔处理机的各位进行布尔处理, 特别适用 于位线控制和解决各种逻辑问题。
智能型温度测量仪
MCS-51 简化结构框图与逻辑符号如图4-3所示。
XTAL1、 XTAL2: 内部振荡电路的输入/ RESET:
EA : 内外程序存储器选择端。 当 EA 为高电平时, 访问内部程序存储器; 当 EA 保持低电平时, 只访问外部 程序存储器, 不管是否有内部存储器。
智能型温度测量仪
P2.0相连。 存储器和8155的控制信号线分别与8031的相应端
相接, 从而可实现各种器件的读写操作。
智能型温度测量仪
4.2.2
温度是一个很重要的物理参数, 也是一个非电量, 自然界中任何物理化学过程都紧密地与温度相联系。 在 很多产品的生产过程中, 温度的测量与控制都直接和产 品质量、 生产效率、 节约能源以及安全生产等重要经济 技术指标相联系。 因此, 温度的测量是一个具有重要意 义的技术领域, 在国民经济各个领域中都受到相当的重 视。
智能型温度测量仪
与此同时, 将数据显示和打印出来; 也可将输出的开关 量经D/A 转换成模拟量输出, 或者利用串、 并行标准接 口实现数据通信。 整机工作过程是在系统软件控制下进 行的。 工作程序编制好后写入只读存储器中, 通过键盘 可将必要的参数和命令存入读/写存储器中。
智能型温度测量仪 图 4-2 智能型温度测量仪的工作流程
智能型温度测量仪
智能化仪器原理及应用

基于C51单片机的智能仪器综合设计实验

基于单片机的智能仪器综合设计实验一、实验目的在实验一~实验三的基础上,完成综合设计实验,学会信号采集、数据处理、键盘控制、LCD或LED显示等功能的智能仪器设计。

二、复习与参考实验一~实验三三、设计指标利用K分度号热电偶进行温度检测,测温范围为500-1200ºC,室温为20ºC,用LCD或LED显示室温和测量温度。

具有4路温度信号循环检测功能,通道切换时间可调;具有任意指定通道显示功能。

四、实验要求1.选择传感器,设计硬件电路,包括检测电路、信号调理电路、AD转换电路、单片机最小系统、LED显示(单号)、LCD显示(双号)、独立式按键,画出电路原理图。

2.画出软件流程图。

3.用Keil C51编写程序。

3.实验结果在LCD或LED上显示出来。

4.实验前完成第1、2项备查。

五、实验仪器设备和材料清单PC机;单片机实验板、连接导线、ST7920图形液晶模块Keil c51软件六、实验成绩评定方法实验成绩包括预习、实验完成质量、实验报告质量3部分组成,各部分所占比例分别为30%、40%、30%。

八、实验报告要求实验报告格式:●实验名称●实验目的●实验内容●硬件设计●软件设计●调试过程●参考文献●附1:电路原理图●附2:程序清单附录:实验程序源代码如下:(陈寅)#include "reg51.h"#define THC0 0xee //5ms时间常数设置#define TLC0 0x00sbit ADWR=P3^6; /***WR*****/sbit ADRD=P3^7; /***RD*****/sbit ADCS=P2^7; /***CS*****/sbit EOC=P3^3; /***EOC****/sbit ADA=P1^3; //通道选择引脚sbit ADB=P1^4;sbit ADC=P1^5;sbit CS =P1^0; /****************/sbit SID=P1^1; /**液晶引脚定义**/sbit SCLK=P1^2; /****************/sbit MODE=P2^0; /*************************/sbit UP=P2^1; /*四个按键接口,0表示按下*/sbit DOWN=P2^2; /*************************/sbit LED1=P2^3; /**4个LED灯引脚定义**/sbit LED2=P2^4; /********************/sbit LED3=P2^5; /********************/sbit LED4=P2^6; /********************//***************500~1200°C范围的K分度表,间隔10*******************/ unsigned int code K_TABLE[71]={20644,21066,21493,21919,22346,22772,23198,23624,24050,24476,24902,25327,25751,26176,26599,27022,27445,27867,28288,28709,29128,29547,29965,30383,30799,31214,31629,32042,32455,32866,33277,33686,34095,34502,34909,35314,35718,36121,36524,36925,37325,37725,38122,38519,38915,39310,39703,40096,40488,40897,41296,41657,42045,42432,42817,43202,43585,43968,44349,44729,45108,45486,45863,46238,46612,46985,47356,47726,48095,48462,48828}; unsigned char GetAdData[10]={0}; //存放获得AD值的数组变量unsigned char ViewTemperature[4]={"0000"}; //显示温度缓冲数组变量unsigned MODESelect=1;int ChangeTime=2; //通道切换时间,单位Sint TongDao=1;void delay(unsigned int j){unsigned char i;do{for(i=0;i<100;i++);}while(j--);}void send_command(unsigned char command_data) //发送命令{unsigned char i;unsigned char i_data;i_data=0xf8; //操作命令,可以查看资料delay(10);CS=1;SCLK=0;for(i=0;i<8;i++){SID=(bit)(i_data&0x80);SCLK=0;SCLK=1;i_data=i_data<<1;}i_data=command_data;i_data&=0xf0;for(i=0;i<8;i++){SID=(bit)(i_data&0x80);SCLK=0;SCLK=1;i_data=i_data<<1;}i_data=command_data;i_data=i_data&0x0f;i_data<<=4;for(i=0;i<8;i++){SID=(bit)(i_data&0x80);SCLK=0;SCLK=1;i_data=i_data<<1;}CS=0;}void send_data(unsigned char command_data) //发送数据{unsigned char i;unsigned char i_data;i_data=0xfa; //操作命令,可以查看资料delay(10);CS=1;for(i=0;i<8;i++){SID=(bit)(i_data&0x80);SCLK=0;SCLK=1;i_data=i_data<<1;}i_data=command_data;i_data&=0xf0;for(i=0;i<8;i++){SID=(bit)(i_data&0x80);SCLK=0;SCLK=1;i_data=i_data<<1;}i_data=command_data;i_data=i_data&0x0f; //取低四位i_data<<=4; //左移四位,从而变成高四位for(i=0;i<8;i++){SID=(bit)(i_data&0x80);SCLK=0;SCLK=1;i_data=i_data<<1;}CS=0;}void InitLCD() //液晶初始化{send_command(0x30); //功能设置:一次送8位数据,基本指令集send_command(0x06); //点设定:显示字符/光标从左到右移位,DDRAM地址加1send_command(0x0c); //显示设定:开显示,显示光标,当前显示位反白闪动send_command(0x04); //显示设定:开显示,显示光标,当前显示位反白闪动send_command(0x01); //清DDRAMsend_command(0x02); //DDRAM地址归位send_command(0x80); //把显示地址设为0X80,即为第一行的首位}/* x,y为起始座标x(0<=x<=3),y(0<=y<=7),x为行座标,y为列座标;how为要显示汉字的个数;style为显示字符的类型,0表汉字,1表字母;str是要显示汉字的地址*/void Display(unsigned char x,unsigned char y,unsigned char how,bit style,unsigned char *stri) //液晶显示{unsigned char hi=0;if(x==0) send_command(0x80+y);else if(x==1) send_command(0x90+y);else if(x==2) send_command(0x88+y);else if(x==3) send_command(0x98+y);if(style==0){for(hi=0;hi<how;hi++){send_data(*(stri+hi*2));send_data(*(stri+hi*2+1));}}elsefor(hi=0;hi<how;hi++) send_data(*(stri+hi));}float LvBo(void)//复合滤波{unsigned char max,min,i;unsigned int sum=0;float U1;max=GetAdData[0];min=GetAdData[0];for(i=0;i<10;i++){sum=sum+GetAdData[i];if(max<GetAdData[i]) max=GetAdData[i];if(min>GetAdData[i]) min=GetAdData[i];}sum=sum-max-min;U1=(float)sum/8;U1=10.0*((U1*5.0)/255); //换成mvreturn U1;}void search (void)//查表子函数{unsigned int da=0,max,min,mid,j;unsigned int var;da=LvBo()*1000; //u1扩大1000倍da=da+798; //20度max=71;min=0;var=0;while(1){mid=(max+min)/2; //中心元素位置if(K_TABLE[mid]==da) {var=mid*10;break;} //中心元素等于查表元素,计算相应温度else if(K_TABLE[mid]>da) max=mid-1;else min=mid+1;if(max-min==1) /*线性插值计算温度值*/{j=(K_TABLE[max]-K_TABLE[min])/10; /*表中相邻两值对应温度相差10°C*/j=(da-K_TABLE[min])/j;var=10*min+j;break;}if(max==min){if(da>=K_TABLE[min]){j=(K_TABLE[min+1]-K_TABLE[min])/10;j=(da-K_TABLE[min])/j;}else if(da<K_TABLE[min]){j=(K_TABLE[min]-K_TABLE[min-1])/10;j=(da-K_TABLE[min-1])/j;min=min-1;}var=10*min+j;break;}}var=var+500;ViewTemperature[0]=var/1000+0x30;ViewTemperature[1]=var/100%10+0x30;ViewTemperature[2]=var/10%10+0x30;ViewTemperature[3]=var%10+0x30;}void LcdDisplay(void){unsigned char ViewMODESelect,ViewTongDao[5]={"0 "},ViewChangeTime[5]={"00(S)"};ViewMODESelect=MODESelect+0x30;ViewTongDao[0]=TongDao+0x30;if(MODESelect==1||MODESelect==2){if(MODESelect==1) Display(0,3,5,0,":自动切换");else if(MODESelect==2) Display(0,3,5,0,":手动切换");Display(0,0,2,0,"模式"); //液晶显示Display(0,2,1,1,&V iewMODESelect);Display(1,0,5,0,"温度通道:");Display(1,5,5,1,V iewTongDao);Display(2,0,4,0,"温度值:");Display(2,4,4,1,V iewTemperature);Display(2,6,2,1,"℃");}else if(MODESelect==3){ViewChangeTime[0]=ChangeTime/10+0x30;ViewChangeTime[1]=ChangeTime%10+0x30;Display(0,0,2,0,"模式");Display(0,2,1,1,&V iewMODESelect);Display(0,3,5,0,":设置时间");Display(1,0,5,0,"切换时间:");Display(1,5,5,1,V iewChangeTime);Display(2,0,14,1," "); //本行清屏}}void TDSelect(void) //AD通道设置{if(TongDao>=5) TongDao=1;if(TongDao<=0) TongDao=4;if(TongDao==1) {ADC=0;ADB=0;ADA=0;}else if(TongDao==2) {ADC=0;ADB=0;ADA=1;}else if(TongDao==3) {ADC=0;ADB=1;ADA=0;}else if(TongDao==4) {ADC=0;ADB=1;ADA=1;}}main(){unsigned char AdCount=0; //用来存放AD采集次数InitLCD();TMOD=0x11; //定时器0初始化TH0=THC0;TL0=TLC0;TR0=1;ET0=1;EA=1;P2|=0x07; //按键初始为高while(1){ADWR=1; /************/ADCS=0; /************/ADWR=0; /**AD初始化**/ADWR=1; /************/while(!EOC); //等待转换结束ADRD=0;GetAdData[AdCount]=P0; //读取转换结果AdCount++;if(AdCount>=10) //连续采集10次值{AdCount=0;search(); //查表LED1=!LED1;LcdDisplay(); //显示}}}void Timer0() interrupt 1{static unsigned char count=0,UPFlag=1,DOWNFlag=1; //按键标志位static unsigned int TimeCount=0;TH0=THC0;TL0=TLC0;if(MODE==0||UP==0||DOWN==0){count++;if(count>=30) //消抖处理{count=0;if(MODE==0) //按键按下{MODESelect++;if(MODESelect>=4) MODESelect=1;}else if(UP==0){UPFlag=0;if(MODESelect==2){TongDao++;TDSelect();}}else if(DOWN==0){DOWNFlag=0;if(MODESelect==2){TongDao--;TDSelect();}}}}else count=0;if(MODESelect==1){TimeCount++;if(TimeCount>=(ChangeTime*1000/5)){TimeCount=0;TongDao++;TDSelect();}}else if(MODESelect==3){if(UPFlag==0) {UPFlag=1;ChangeTime++;}else if(DOWNFlag==0){DOWNFlag=1;ChangeTime--;if(ChangeTime<=0) ChangeTime=1;}}}。

智能仪器3

(2)MC14433MC14433是Motorola公司的3(1/2)位双积分型A/D转换器。

分辨率相当于二进制11位,远高于ADC0809,转换时间100m S,转换误差小于±1LSB。

具有自动调零、自动极性判断功能,具有自动量程控制信号输出,数据输出采用动态字位扫描BCD码输出。

曾经广泛应用于各类模拟量测量仪器。

1)引脚功能简介:见附图3-3所示。

2)时钟频率f CP的选择:如果正向积分阶段的时间(4000*T CP)是干扰信号周期的整倍数,对此干扰抑制效果很好,如50Hz工频干扰的周期为20mS,取正向积分时间为40mS,则40000μS=4000×T CP,即T CP=40000μS/4000=10μS,f CP=1/T CP=1/10μS=100kHz。

其关系请参见《中国集成电路大全—CMOS集成电路》P600图13-76所示,当R C=300kΩ时f CP≈100kHz。

3)A/D转换速度:A/D转换速度由f CP决定。

该芯片完成1次A/D转换需要16400个时钟周期,当f CP=100kHz即T CP=10μS时,转换周期为T≈16400*10μS=164mS,A/D转换速度约每秒6次。

为提高对50Hz工频干扰的抗干扰能力,正向积分时间应≥20mS,即T CP≥20000μS/4000=5μS,转换周期为T≥16400*5μS=82mS/次,所以,转换速度应≤12.2次/s。

若不考虑抗干扰性能,该芯片的最高转换速度可达30次/秒。

4)千位编码:Q3—千位值,千位数转换结果为1时,输出低电平,Q3=0。

Q2—电压极性,正极性时输出高电平,Q2=1。

Q0—超量程范围标志,Q0=1表示超量程范围,若同时Q3=0表示过量程;若同时Q3=1表示欠量程。

5) 输出时序:见附图3-4所示。

6) 接口电路设计:MC14433的Q0~Q3、DS1~DS4连接到AT89C51的P1.0~P1.7;MC14433的EOC (A/D 转换结束标志)与DU (更新A/D 转换结果)相连后,实现连续转换,再连接到AT89C51的INT0作为中断请求信号,见附图3-5所示。

传感器课程设计液位智能仪

烟台南山学院毕业论文Array二○一三年五月传感器课程设计液位智能仪专业班级:姓名:指导教师:第1页摘要本设计一种多功能智能化液位检测装置,采用ATmega8作为硬件电路核心,以圆柱形电容探头为液位检测传感器,利用电容频率转换原理将电容变化为频率变化,利用单片机检测频率,软件计算液位高度。

本装置具有机械去液面波动,用软件进行温度修正、线性校正、用户自校正,通信和多液体选择等功能。

本文主要创新之处是提出一种适合于波动液面液位检测的智能液位仪,具有温度补偿、用户自校正和通信等功能。

本文设计了高度为100cm的柱形电容液位检测传感器,电容器具有结构简单,电路实现容易,利用555振荡电路实现了电容到频率的转换,利用程序实现频率到高度转换,理论正确可靠,推算过程合理,利用软件分段修正减小了线性误差。

在电容的两端装有液位缓冲器,采用机械的方式减小液面波动。

由实验测试可知,本液位检测装置性能稳定,检测可靠,测量精度达到1cm, 分辨率可0.1cm,达到车载式喷雾机液位检测的要求。

利用此方案可根据需要设计各种量程的液位检测装置,适用性较广。

关键词:电容式液位计;频率转换;频率测量AbstractThis design a kind of multi-functional intelligent liquid level detection device, using ATmega8 as core, the hardware circuit in cylindrical capacitance sensor for liquid level detection sensor, using capacitance frequency conversion principle of capacitance to frequency changes, using single-chip microcomputer testing frequency, the level of software calculation. This device has the machinery to liquid level fluctuation, temperature correction, linear correction by software, user self correction, communication and more liquid, and other functions.Main innovation of this paper is proposed a kind of suitable for the liquid level fluctuation in intelligent liquid level meter liquid level detection, temperature compensation, user self-calibration is communication. This article design the height is 100 cm of cylindrical capacitance liquid level detection sensor, the capacitor has the advantages of simple structure, circuit implementation is easy, using 555 oscillation circuit for capacitance to frequency conversion, using the program to realize frequency conversion to the height, is correct and reliable, reasonable calculation process, using piecewise linear error correction reduces the software. In the ends of the capacitor is equipped with liquid level buffers, adopt the way of mechanical reduce liquid level fluctuation. The experimental test shows that the liquid level detection device has stable performance, reliable detection, measurement accuracy is 1 cm, resolution to 0.1 cm, to suit the requirements of vehicular spray machine for liquid level detection. Using this scheme can be according to the need to design various range of liquid level detection device, has a wide applicability.Keywords:Capacitive liquid level meter;Frequency conversion;Frequency measurement目录绪论 (1)1. 选题背景及设计指导思想 (2)1.1课题背景 (2)1.2指导思想 (2)2. 引言 (3)3. 电容式液位传感器结构与测量原理 (3)3.1.1电容式液位传感器的工作原理 (3)3.1.2传感器的组成 (4)3.1.3测量原理 (4)3.2将电容转化成电信号部分 (5)3.3 电信号放大电路设计 (5)3.4A/D转换器设计 (6)3.5控制电路的设计 (7)3.6 显示电路设计 (8)3.7软件系统的设计 (9)4. 测量电路设计 (11)4. 1 测量电路 (11)4.2整流电路 (14)4.3放大电路 (14)5. 误差分析 (15)5. 1 机械结构参数的影响 (15)5. 2 测量电路的影响 (15)6. 结论 (16)致谢 (17)参考文献 (18)附录一:系统总图 (19)附录二:程序清单 (20)绪论河流、水库或容器的液位可以通过测量浸在液体内两电极间的电容而进行监控。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档