毕业设计81智能型身高体重仪的研制

时间:2022-03-11 13:23:07  热度:0°C

1、智能 型 身高体重仪的研制 1 1 智能 型 身高体重仪的概述 身高体重仪,早已被广泛用于家庭和平常的生活中,使人们对自己的身体状况有更好的掌握,更好的提高人们对健康的认识。传统的身高体重仪器一般为机械结构,这种仪器需要人 工操作,不能 显示,数据需要通过指针和刻度盘来读取,这种仪器用起来很不方便, 而且 它的误差也比较大,有仪器自身误差,也存在人为 的 在读取时 所产生 的随机误差等。 近年来,市面上也大量流行着能测***身高和体重的电子***称,它能 自动 测量 出人的 身高 体重值,并配有打印 机输出 和语音 播放 电路 ,在很大程度上提高了***身高体重测量的准确性,也丰富 了测量的趣味性。

2、一般来说这种身高体重仪,操作简单, 由 人启动 后 测重、测高、显示、打印、语音播放等功能都 可以 自动完成的,但是这种仪器也存在某些方面的不足:体积大,移动起来不方便;测高功能是通过测高平杆带动码盘转动,码盘孔用光电读取头把测高脉冲传给单片机进行计数,从而得到 被测者的 身高值,这种仪器需要电机来带动测高平杆移动,为接触型测量,并且测量速度不快;同时还需要人工来操作。 智能 型 身高体重仪,顾名思义,就是整个测量身高和体重的过程都是 自动完成的。同时,它 又 具备了传统身高体重仪所 不具备 的优点和亮点:小巧玲珑,移动 方便;测量速度快、准确,并且为非接触型仪器; 而且 它功耗低,且无需人工

3、操作, 是一种 完全的智能自动化仪器。 这种仪器在使用时,即 进行身高体重测量时,只 要 被测者站在仪器上 所示的位置 ,本仪器就会自动的进行身高 与 体重的测量, 然后 对结果进行直观的数字显示和语音播放。对于 本仪器 来说,整个 工作 过程就是 : 通电开机,在无人测量状态下 显示时钟日历,同时检测是否有人要 进行 测量 ; 如有,系统自动启动测量身高和体重的电路进行测量。具体的 测量 过程为:启动***测高发射电路 等待***反射回来并计算出时间差由温度传感器测出温度 并 对声速进行 补偿计算出身高值并送入控制系统从称重传感器输出的信号经放大并A/D 转换后的体重值送入控制系统由控制系统

4、算出结果最后为显示 和 播放所测得的 身高体重值并打印出结果结束。整个测量身高和体重的 过程,不必由人工操作即可全部自动完成。可见,对智能 型 身高体重仪的研制还是有 很 积极的意义的。 智能 型 身高体重仪的研制 2 2 方案论证 按照本设计功能的要求,系统由 9 个部分组成:***部分、体重测量部分、身高测量部分、时钟日历部分、数据显示部分、语音处理部分、打印控制部分、扩展 I/O 部分和电路电源部分,智能身高体重仪的总体电路结构图 2-1 所示: 图 2-1 智能身高体重仪的总体电路结构图 2/1 ***部分 方案论证 本系统***部分的可选择的方案有以下两种: 方案一、 采用大规模可编

5、程逻辑器件 来进行控制; 采用本方案,会使系统设计起来相当复杂。又 因为系统需要 进行 数码显示、语音播放和打印 控制 ,所以不宜采用大规模可编程逻辑器件 (CPLD、 FPGA)来实现。 因为大规模可编程逻辑器件一般是使用状态机方式来实现,即所解 决的问题都是规则的有限状态转换问题。本系统状态较多,用本方案难度较大。 方案二、采用单片机来 实现控制 以单片机为主体的设计,可以容易地将计算机技术和测量控制技术结合在一起,组成新一代的所谓“智能化测量控制系统”。这种新型的智能仪表在测量过程自动化、测量结果的数据处理以及功能的多样化方面,都取得了巨大的进展。所以 本系统 采用本方案,即 基于 51

6、 系列单片机来实现, 又因为 系统没有其它高标准的要求, 再考虑到本设计中程序部分比较大,所以 我们最终选择了AT89C52 这个 比较 常用的 单片机来实现系统 的功能要求 。 AT89C52 内部带有 8KB的程序存储器, 基本上已经能够满足我们的需要; 有四个 I/O 口,不能满足本设计***能 的要求 ,所以我们 用它的 P0 口和 8255 进行了扩展。 控 制 器 部 分 体重测量部分 身高测量部分 数据显示部分 语音处理部分 时钟日历部分 打印控制部分 扩 展I/O部 分 智能 型 身高体重仪的研制 3 2/2 体重测量部分 方案论证 体重测量部分 是 由传感器将站在测量台上的被测

7、者的体重转变为 近似 线性的电压输出,这个微小的电压是毫伏级的, 它不能满足 A/D 转换器的输入需求,所以要对这个 微小的输出电压 进行 信号的前级处理即 滤波和 放大后 ,才能满足A/D 转换所需的电压幅度,经过 A/D 转换器 的 转换将模拟电压值 转 换为相应的数字量,由单片机 AT89C52 进行运算处理。 至于如何运算才能使处理后的结果对应被测者的真实的体重,这主要是由 A/D 转换器的分辨率和称重传感器的量程所决 定的,结果的 运 算主要由软件来实现。 2/2/1 传感器的 方案论证 传感器在电子衡器中的核心部件,也是本仪器中性能价格比的基本决定因素,所以传感器的选择具有着重要的

8、意义。测重的传感器我们可以用压力传感器,也可以用称重传感器。考虑到 称重 传感器集材料、工艺技术、加工测试技术及微电子技术于一体,技术含量比较高,属高科技产品,其几十年的发展也使其在原理、材料、电子测量技术等方面都已趋向成熟, 又 考虑到一般电子衡器大多都 是采 用称重传感器,所以体重测量部分中我们也选择 了 称重传感器。 又 考虑到人的体重一般都在 0120Kg 以内,再根据本设计要求,重量误差应控制在 0/15Kg, 又 考虑到秤台自重、振动和冲击分量,还要避免超重损坏传感器,所以我们 确定 传感器量程为 150Kg。 最终方案我们 选择的是上海开沐自动化有限公司生产的 NA-TH150

9、型称重传感器,量程 150Kg,允许过载为150%F/S。 它 可以满足本系统的精度要求 、 量程要求 以及价格等要求 。 2/2/2 前级 处理 电路部分方案论证 称重传感器存在着桥压的纹波等一些干扰信号, 再加上 称重传感器输出的电压信号为毫伏级, 所以我们要对称重传感器的输出信号进行处理,才能输入A/D 转换器中 。 前级处理电路部分, 我们考虑可以采用以下几种方案: 方案 一 、利用普通低温漂运算放大器构成 前级处理电路 ; 普通低温漂运算放大器构成多级放大器会引入大量噪声。由于 A/D 转换器需要很高的精度,所以几毫伏的干扰信号就会直接影响最后的测量精度。所以,此中方案不宜采用。 方

10、案二、 主要 由高精度低漂移运算放大器构成差动放大器 ,而构成的前级智能 型 身高体重仪的研制 4 处理电路 ; 差动放大器具有高输入阻抗,增益高的特点,可以利用普通运放 (如 OP07)做成一个差动放大器。 其设计电路如图 2-2 所示: 电阻 R1、 R2 电容 C1、 C2、 C3、 C4 用于滤除前级的噪声, C1、 C2 为普通小电容,可以滤除高频干扰, C3、 C4 为大的电解电容,主要用于滤除低频噪声。 图 2-2 普通运放所设计的差动放大器电路 优点:输入级串入跟随放大器,增大了输入阻抗,中间级为差动放大电路,滑动变阻器 R6 可以调节输出零点,最后一级可以用于微调放大倍数,使

11、输出满足满量程要求。输出级为反向放大器,所以输出电阻不是很大, 基本上可以 符合应用 的 要求。 缺点:此电路要求 R3、 R4 相等,误差将会影响输出精度,难度较大。实际测量,每一级运放都会引入较大噪声。对精度影响较大。 方案 三 :采用专用仪表放大器,如: INA126, INA121 等 构成前级处理电路 。 此类芯片内部采用差动输入,共模抑制比高,差模输入阻抗大,增益高,精度也非常好,且外部接口简单。 以 INA126 为例 /其 接口 电路 如 图 2-3 所示: 图 2-3 INA126 接口电路 智能 型 身高体重仪的研制 5 放大器增益GRKG 805 ,通过改变 GR 的大小

12、来改变放大器的增益。 基于以上分析,我们决定采用 由 制作方便而且精度很好的专用仪表放大器INA126 来完成前级处理电路的设计 。 2/2/3 A/D 转换电路部分方 案论证 考虑到对体重的测量,精度要求不是很苛刻,而 10 位 A/D 转换器误差应在精度范围之内。 10 位 A/D 精度: 150Kg/1024=0/146Kg,这样的精度可以满足我们设计的要求 /所以我们选择 10 位或者精度更高的 A/D。 我们考虑用以下方案: 方案一、逐次逼近型 A/D 转换器,如: ADS7805、 ADS7804 等。 逐次逼近型 A/D 转换 ,一般具有采样 /保持功能。采样频率高, 功耗比较低

13、,是理想的高速、高精度、省电型 A/D 转换器件。 高精度逐次逼近型 A/D 转换 器一般都带有内部基准源和内部时钟,基于AT89C52 构成 的系统设计时仅需要外接几个电阻、电容。 但考虑到所转换的信号为一慢变信号,逐次逼近型 A/D 转换器的快速的优点不能很好的发挥,且根据系统的要求, 10 位 AD 足以满足精度要求,太高的精度就反而浪费了系统资源。所以此方案并不是理想的选择。 方案二、双积分型 A/D 转换器:如: ICL7135、 ICL7109、 ICL1549 等。 双积分型 A/D 转换器精度高,但速度较慢 (如: ICL7135)/具有精确的差分输入,输入阻抗高(大于 M31

14、0 ),可自动调零,超量程信号,全部输出于 TTL电平兼 容。 双积分型 A/D 转换器具有很强的抗干扰能力。对正负对称的工频干扰信号积分为零,所以对 50Hz 的工频干扰抑制能力较强,对高于工频干扰(例如噪声电压)已有良好的滤波作用。只要干扰电压的平均值为零,对输出就不产生影响。尤其对本系统,缓慢变化的压力信号,很容易受到工频信号的影响。故而采用双积分型 A/D 转换器可大大降低对滤波电路的要求。 作为测量体重的仪器,系统对 A/D 的转换速度要求并不高,精度上 10 位的AD 足以满足要求。另外双积分型 A/D 转换器 具有 较强的抗干扰能力 、 精确的差分输入 以及 低廉的价格 等优点

15、。同时我们 又 考虑到串行输入 /输出的 A/D 转换芯片具有接线简单,功耗低,价格低廉等特点,综合的分析其优点和缺点,我们智能 型 身高体重仪的研制 6 最终选择了 ICL1549。 2/3 身高测量部分 方案论证 身高测量 有我们可以采用以下的方案: 方案一、利用标尺和刻度来测量身高 ; 这个方案与我们所设计的智能化仪器 原则 相违背,所以我们 舍弃 此方案。 方案二、采用电子仪器控制测高平杆接触***来自动完成身高的测量 ; 此方案中 身高的 测量是用 测高平杆 自动 带动码盘转动,码盘孔用光电读取头把测高脉冲传给单片机进行计数,从而得到 被测者的 身高值 。这种方案测量速度慢,而且直接

16、导致测量仪器设计复杂,体积庞大,也体现不出我们所说的智能化,所以我们 也 不采用本方案。 方案三、采用***传感器或光栅传感器等来完成无接触的身高测量。 身高测量中是体现我们智能仪器的一个 重要的 方面,所以 在方案的选择上我们 应 舍 弃一些 传统的方 案; 又由于***指向性强,能量消耗缓慢,在介质中传播的距离远,经常用于距离的测量 ;再加上 利用***检测距离,设计比较方便, 测量速度快, 计算处理出比较简单,并且在测量精度方面 也 能达到日常使用的要求 ; 所以我们本设计中采用*** 传感器 来进行身高的测量。 2/4 时钟日历部分 方案论 证 时钟日历部分我们可采用以下两种方案: 方

17、案一、采用并行接口的时钟日历芯片 ; 并行芯片我们常 用的是 DS12C877,它解决了 K2K 问题,内部还具有 114 个RAM 可供系统在掉电后存储系数等数据;它的连接是与 RAM 使用同一个插座,需要 8 根数据地址线。 方案二、采用串行接口的时钟日历芯片。 串行芯片我们常用的是 DS1302,它计时准确,可对秒、分、时、日、周、年、月以及带闰年补偿的年进行补偿。它有自己的振荡电路,它只需要 3 根数据线和单片机通讯,接线简单方便,在系统运行时还有对后备电源自动充电功能,在掉电时,可以 继续计时。 考虑到本设计中对时钟日历部分不是必要的部分,只是作为功能扩展部分,所以我们在设计中选择性

18、比较大, 但是考虑到价格和接线等因素, 在本设计中我智能 型 身高体重仪的研制 7 们选用了 本 方案中 的 这种 高性能、低功耗、带 RAM 的实时时钟 芯片 DS1302。 2/5 数据显示部分 方案论证 数据显示部分我们可以采用以下的方案: 方案一、采用 LCD 液晶显示 ; 方案二、采用 LED 数码管显示。 考虑到本设计中的需要显示的数据分为两部分,初始 时 为日历和时钟部分,待 测量结束后,显示为身高和体重的值,这两个部分都 只是数字数据,而且都 只需 要 8 位 ( 月、日 、时、分各 2 位; 身高 4 位,体重 4 位) 就可以满足要求, 考虑到 LCD 比 LED 的价格

19、工作电压等因素 , 再加上 在本设计中我们对显示 部分 没有太 高的要求 , 所以本设计中的显示部分采用 方案二即用 普通的 8 位共***极 7 段数字型 LED,分时显示。 在 共***极 7 段 数码管的驱动 问题上, 我们选择 了 MAX7219, MAX7219 是集成的串行输入 /输出共***极显示驱动器,这种接口微处理可驱动 8 位 7 段数字型LED 或条形图显示器或 64 只*** LED。 MAX7219 内置有 BCD ***、 亮度控制寄存器、 多路扫描电路、段及数字驱动器和用于存储每一位的 8 8 静 态 RAM,对所有的 8 个 LED 来说,只需要外接一个电阻 就 能控制段电流

20、 的大小 。 2/6 语音播放部分 方案论证 语音 播放 部分 可以采用以下方案: 方案一、采用只能播放语音的芯片 ; 这种芯片为放音芯片,它的数据 大多 放在单片机的内存单 元中,使用起来相当 不便,而且增加了软件设计时的复杂程度,同时用这种芯片 修改起来也相当的复杂, 所以我们不用此方案。 方案二、采用语音录放芯片。 例如 ISD1400 系列单片机语音录放芯片,这种芯片大多由时钟振荡器、内部存储器、微音放大器、自动增益控制电路、 抗 干扰滤波器、差动功率放大器等 高品质语音录放电路所构成。 考虑到本部分只 用于给用户提供一些操作提示 和报告测量结果 。根据系统的要求,我们采用美国信息存贮

21、器件公司 ISD1400 系列中的 ISD1420,它采用在E2PROM 中直接模拟量存贮技术( DAS),省去数字存贮器、数据转换及备用 电智能 型 身高体重仪的研制 8 电源等外围电路,具有低功耗、零功率存贮信息、无需编辑开发机、高保真语音录放等特点。 2/7 打印控制部分 方案论证 打印机可供我们选择的方案有以下几种: 方案一、采用高档型的打印机; 这种打印机功能齐全,打印速度快,但体积较大,价格昂贵,又考虑到在本设计中我们对 打印的功能无如此高的要求,所以我们不用此方案。 方案二、采用微型的针式打印机。 根据本设计的要求和 系统的功能要求, 又考虑到 我们打印的只是一般的数字数据和一般

22、的字符,所以点阵式打印机就可以满足我们的要求;再加上价格 体积等方面的因素,我们决定采用 本方案, 微型打印机 型号我们选择的是 TPP-40A。 2/8 扩展 I/O 部分 方案论证 由于本系统外围器件较多,要想满足 本设计的要求, AT89C52 本身的 I/O 口是 不 够用的 , 所以 我们要 对其 进行扩展。 扩展的方案有以下几种: 方案一、采用 Intel 公司的 8255( 3 8 位) 进行扩展。 方案二、采用 Intel 公司的 8155(2 8 位 6 位 )进行扩展。 方案三、采用 Intel 公司的 8243(4 4 位 )进行扩展。 方案四、采用 Silos 公司的

23、PIO(2 8 位 )进行扩展 等。 根据系统设计要求及考虑到各因素,我们通过单片机的 P0 口和 8255 进行了扩展 , 扩展后 8255 的接口 : PA 口和 PC 口 用来控制打印机 , PB 口用 控制 语音处理 电路 。 2/9 电路电源部分 本设计中除了 ***发射电路中的 555 定时器需要 +12V 电源 外,其他的芯片 大 都是用 +5V 电源供电,所以我们在系统中需要提供 +12V 和 +5V 的电源 。在本设计中电源部分可以由两个方案来实现: 方案一、直接用 直流 稳压器输出 +12V 和 +5V 直流电压; 方案二、通用的 220V 交流电压通过变压器变压 并 整流

24、后输出 +15V, 并接至 LM7812 和 LM7805 的输入端 Vin。 考虑到价格等各种因素,在本系统设计 中我们 采 用方案 二 。 智能 型 身高体重仪的研制 9 3 系统硬件设计 3/1 智能 型 身高体重仪的硬件设计概述 本设计要求系统 完成 :在开机后, 无人测量 时 ,仪器显示日期和时间,日期和时间数据由时钟芯片 DS1302 提供, 数据 用 MAX7219 驱动的 8 位 7 段 LED 显示;有人测量时,系统自动 启动 测量 电路。测量 过程中 , 由 ***发出控制命令,启动身高测量电路和体重测量电路;测量结束后,数据送入*** AT89C52,再由*** AT89

25、C52 把 结果 送入显示缓冲区,并刷新显示部分,显示身高和体重值, 此时 8 位 LED 不再 显示日期和时间 ,而是用来 显示 测量结果 ;同时由*** AT89C52 通过扩展芯片 8255 送出数据命令来控制语音芯片 ISD1420,报告出身高体重值,并报告 所计算 出被测者体型情况;最后再由*** AT89C52 通过 8255 送出数据 /命令来对打印机 TPP-40A 进行控制,打印出 测量结果 。 本 设计的 控制 核心 即 ***部分 我们 采用的是 ATMEL公司生产的 89系列单片机 中的 AT89C52,所有的控制命令和数据处理都由它来 完成 。 测量身高部分通过***

26、传感器发射 电路 和 *** 接收 电路完成 , 并 用AT89C52 中的定时器进行计时,计算出所用的时间,然后再根据 DS18B20 测出的温度, 对声速进行补偿,然后由时间乘以声速即可计算出******与被测者头部的距离;由于***传感器的***离被测者脚底的距离是固定和已知的,所以两个距离的差即为被测者的身高。 测量体重部分通过称重传感器输出的毫伏信号,经过前向通道中的放大滤波,输 出到 A/D 转换器 ICL1549 的输入端,经过 A/D 转换后,数 据 直接输出到*** AT89C52,由单片机对其进行运算处理计算出结果 。 显示、语音和打印部分,在设计中比较的具体化,在此我们不于叙

27、述,我们将在本章的后面几节中给予详细说明。 3/2 控制单元设计 由于本设计的核心即控制单元的设计只有一个 AT89C52 单片机, 又因为这种单片机在我们的 日常 生活和学习 工作 中比较常用 /所以我们在 此 就不 再 单单对此单片机进行 性能的 介绍 。 AT89C52 各管脚的分配和应用可参考附录 2:智能 型 身高体重仪的 总 电路图。 智能 型 身高体重仪的研制 10 3/3 测量 身高电路设计 本设计中测量身高电路主要是 通过 ***测距电路实现 的 。***测距电路 主要包括:温度检测电路 、 ***发射及控制电路 、 ***接收电路 、 信息处理电路及其辅助电路组成。 为 降

28、低调试的复杂性,提高系统安装的灵活性 ,***发射与接收采用分离设计,即单独采用发射器和***,而不是采用发射接收一体化器件。测高电路系统电源以 +12V 和 +5V 为主电源, 它 通过 本设计中的 电源 电路实现,在此我们不予详述 。 ***测距电路原理概述:所谓***是指高于 2000Hz 的机械波,具有强度大、方向性好等特性。***一般采用压电效应或磁 致伸缩效应产生。利用***测量距离的原理可简单阐述为:***定期发送***,遭遇到障碍物时发生反射,发射波经由接 收 器接收并转化为电信号,这样只要测出发送和发射的时间差 t,然后按式 : S=C* t/2 ( 3-1) 计算 出距离,

29、式中, C 为***在空气中的传播速度, 0时为 331m/s, 25时为 347m/s,其与环境温度 T()的关系如下式表示: C=331/4+0/61*T ( 3-2) 由此可见,声速与温度 有密切关系。在应用中,如果温度变化不大,并且无特殊精度要求,可认为声速在空气中是基本不变的。否则,必须进行温度补偿。温度补偿通常有两种方法: 补偿方法 1:每次先按照公式 3-2 计算当时声速,然后再按照公式 3-1 计算距离。特点是:根据当时的温度得到精确声速,从而计算得到的距离值比较精确;但程序中牵涉到浮点计算,对于微处理器系统实现,难度相对较大。 但经多次测试,用此方法最大误差一般不超过 1cm

30、,其精度可以满足本设计中的要求。 补偿方法 2:根据当前的环境温度,查取特征温度值 声速表中最接近温度对应的声速值,作为当 前声速,然后按照公式 3-1 进行距离计算。其特点是:避免了复杂的声速计算, 而且 可 事先 计算, 得到温度 声速二维表,将之固化到系统程序中,然后直接使用查表法得到声速值,程序实现比较简单, 但其所 得精度没有方法 1 高。 另外,由于***测距电路利用 的是 接收发射 分离设计 来进行距离的计算,智能 型 身高体重仪的研制 11 T R IG2O U T34CVOLT5T H O L D6D IS C H G781R E S E TV C CG N DU55 5 5

31、R91KR85KC 1 30 / 1 u F***传感器 1发射端C 1 03 3 0 0 p F+ 1 2S T A R T因而不可避免地存在发射与反射之间的夹角,其大小为 2。当较小时,可直接按式 3-1 进行计算得到距离;当较大时,则必须进行距离修正,修正公式为式 3-3: S=COS *C*t /2 ( 3-3) 在公式 3-3 中,倾角与***装置和接收装置的安装位置有关。在实际应用中,就 应该 注意 到 适当 安装。 在本设计中,我们会努力使 尽可能的小。 3/3/1 ***发射电路的设计 ***发射器包括***产生电 路和***发射控制电路两个部分,******(又称“***换能器

32、” )的型号 我们 选用 的是 CSB40T。可采用软件发生法和硬件发生法产生***。 前者利用软件产生 40KHz 的***信号,通过输出引脚输入至驱动器,经驱动器驱动后推动***产生***。这种方法的特点是充分利用软件,灵 活性好,得需要设计一个驱动电流为 100mA 以上的驱动电路。 后者是利用***专用发生电路或通用发生电路产生***信号,并直接驱动换能器产生***信号。这种方法的特点是无需驱动电路,但缺乏灵活性。本测距仪采用的是 硬 件发生法。具体电路如图 3-1 所示: 图 3-1 ***发射电路 从图 3-1 可知, 40KHz 的***信号是利用 555 时基电路振荡产生的。基振

33、荡频率计算公式如下: f1/4 (R9+2*R8)*C10) 将 R8 设计可调电阻的目的是为调节信号频率,使之与 ****** 的 40KHz固 有频率一致。为保证 555 时基具有足够的驱动能力,宜采用 +12V 电源。 START为***发射控制信号,由微处理器进行控制。 3/3/2 ***接收电路的设计 ******包括***接收***、信号放大电路及波形变换电路三部分。******必须采用与发射***对应的型号,主要是频率要一致,这里 我们选智能 型 身高体重仪的研制 12 用 CSB40R,否则因无法产生共振而影响接收效果、甚至无法接收。由于经***变换后的正弦波电信号非常弱,因此必须经放大

34、电路放大。正弦波信号不能直接被微处理器接收,因此必须进行波形变换。按照概述部分所讨论的原 理 ,微处理器需要 的只是第一个回波的时刻,因此可采用比较电路将正弦波转换为脉冲方波,由软件查询得到第一个回波前沿时刻。接收电路的设计可采用专用接收电路,例如 LM1808,也可以采用通用电路来实现。 ***在空气中传播时,其能量的衰减程度与距离成正比,即距离越近,信号越强;距离越远,信号越弱,通常在 1mV 1V 之间。当然,不同的接收***的输出信号强度存在差异。由于输入信号的范围较大,对放大电路的增益提出了两个要求: 1)放大增益要大,以适应小信号时的需要; 2)放大增益要能变化,以适应信号变化范围大

35、的需要。 另外,由于输入信号 为正弦波,因此必须将放大电路设计成交流放大电路。为减少负电源的使用,放大电路采用单电源供电,信号放大和变换采用了一片LM324 通用放大器,前***为放大器设计,后一级为比较器设计。 LM324 既可以双电源供电,也可以单电源工作,因此能满足使用要求。也可以选用其他放大运算器,但必须注意其能否单电源工作,因为不是所有运算放大器都能单电源使用的。为满***流信号的需要,每一级放大器均采用阻容电路进行电平偏移,即图 3-2 所示: ***传感器 1接收端C50 / 1 u FR 1 4 1 0 KR 1 81 0 0 KR 2 3 1 0 0 KR 1 0 1 0 0 K

36、V C CC6 0 / 1 u FR 1 61 0 KR 1 91 0 0 KR 2 01 0 0 KV C CR 1 1 1 0 0 KC7 0 / 1 u FR 1 7 1 0 KR 2 11 0 0 KR 2 21 0 0 KV C CR 1 2 1 0 0 KC8 0 / 1 u FR 2 4 1 0 0 KR 2 51 0 0 KV C CR 1 55KV C C2314111U 4 AL M3 2 4 A J4115672U 4 BL M3 2 4 A J41181093U 4 CL M3 2 4 A J4111412134U 4 DL M3 2 4H I G HC91 0 u F

37、 C 1 01 0 u FC 1 11 0 u FC 1 21 0 u F图 3-2 ***接收电路 图中 C9、 C10、 C11 和 C12,容量均为 10F,实现单电源 条件下交流信号的放大。对于交流信号而言,电容为短路,因此前***放大电路的放大增益均为10。在实验中发现,距离较近时,两级放大时的增益已能输出足够强度的信号了, 第 ***有可能出现信号饱和,但距离较远时,两级放大不能满足,必须采智能 型 身高体重仪的研制 13 R35KV C C3DQ2G N D1D S 1 8 B 2 0V C CP 1 / 7用***放大。为提高自适应能力,可在上图的基础上,增设增益选择电路。由软件自动

38、完成增益切换,切换的原理是先进行大增益搜索回波,一旦发现回波,但后续无回波的情况,说明增益过大,必须减少一级增益。当然,软件设计的难度会大大增加,而且这种软件自适应增益法只能适用于静态测量,在动态测量条件下,会导致 距离测量误差增大。其原因是第一回波不可能作为距离依据,采用的可能是第二回波或第三回波的前沿信号,存在时差问题。在本设计中由于所测的距离较近,所以为了避免信号的饱和,我们只用了两级放大。 合理调节电位器 R24,选择比较基准电压,可使测量更加准确和稳定。实践证明,比较参考电压的选取非常关键,它与测量灵敏度、系统鲁棒性都有关联。选 小 时 可提高测量灵敏度,便鲁棒性下降,容易出现虚假回

39、波被捕捉的情况,选大 时 则情况相反。显然,按照上图的设计,当没有回波信号或回波信号很弱(即超出测量范围)时,比较器输出 HIGH 为高电平,反 之。为低电平。 3/3/3 基于 DS18B20 的温度检测电路 的设计 温度测量电路是基于 DS18B20 的线式数字温度传感器,电路非常简洁,具体电路如图 3-3 所示: (1)DS18B20 的功能介绍 DS18B20 温度传感器是美国 DSLLAS 半导体公司推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比。它能直接读出被测温度,并且可根据实际要求通过简单的编程实现 912 位的数字值读数方式。 DS18B20 的引脚判断方法为

40、:字面对人,从左到右分别是 1( GND)、 2(输入 /输出)、 3( VDD)。 图 3-3 温度测量电路 在图中,电阻 R3 为上拉电阻,阻值 可选为 5K左右。 表 3-1 DS18B20 分辨率的定义规定 R1 R0 分辨率 /位 温度最大值转换时间 /ms 0 0 9 93/75 0 1 10 187/5 1 0 11 375 1 1 12 750 智能 型 身高体重仪的研制 14 DS18B20 分辨率的定义规定如表 3-1 所示。 由表 3-1 可见, DS18B20 温度转换的时间比较长,而且分辨率越高,温度数据转换 所需要的 时间就越长。因此,在实际应用中要将分辨率和转换时

41、间权衡考虑。 (2)DS18B20 的工作原理 DS18B20 的测温原理如图 3-4 所示: 图中低温度系数晶振的振荡率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计算器 1;图中还隐含着计数门,当计数门打开时, DS18B20就对温度系数振荡器产生的时钟脉冲进行计数,进而完成温度测量。计数门的开启由高温度系数振荡器来决定,每次测量前,首先将 55所对应的一个基数分别置入减法计数器 1、温度寄存器中,减法计数器 1 和温度寄存器被预置在 55所对应的一个基数值。 图 3-4 DS18B20 测温原理图 减法计数器 1 对低温度系数晶振来产生的脉冲信号进行送行计数,当 减法计数器 1

42、的预置值减到 0 时,温度寄存器的值将加 1,减法计数器 1 的预置值将重新被装入 /减法计数器 1重新开始对低温度系数晶振产生的脉冲信号进行计数 /如此循环直到减法计数器 2 计数到 0 时 /停止温度寄存器值的累加 /此时温度寄存器中的数值就是所测得温度值。 另外,由于 DS18B20 单线通信功能是分时完成的,它有严格的时隙概念,因此读写时序很重要。系统对 DS18B20 的各种操作必须按协议进行。操作协议为:初始化 DS18B20(发复位脉冲)发 ROM 功能命令发存储器操作命令处理数据。 斜率累加器 预置 低温度系数振荡器 减法计数器 1 减到 0 计数比较器 预置 温度寄存器 高温

43、度系数振荡器 减法计数器 2 减到 0 智能 型 身高体重仪的研制 15 (3) 温度数据的计算处理方法 从 DS18B20 读取出的二进制必须先转换为十进制,才能 便于对温度进行补偿 。因为从 DS18B20 精度为 912 位可选的,为了提高精度 12 位。在 12 位精度时,温度寄存器里的值是以 0/0625 为步进的,即温度值为温度寄存器里的二进制值乘以 0/0625,就是实际的十进制温度值。通过观察可以发现一个十进制和二进制值之间有很明显的关系,就是把二进制的高字节的低半字节和低字节的高半字节组成一个字节,这个字节的二进制值化为十进制值后,就是温度的百、十、个位值,而剩下的低字节的低

44、半字节化成十进制值后,就是温度的小数部分。小数 部分因数是半个字节,所以二进制值范围是 0F,转换成十进制小数值就是 0/0625 的倍数( 015 倍)。实际应用不必 要求 有这么高的精度, 本系统中 , 精确到 0/1 ,就能达到我们使用所需的精度 。 3/4 测量体重电路设计 测量体重电路主要由称重传感器、前级 处理 电路和 A/D 转换电路组成。 被测量者站在测量 台上 时, 通过 称重传感器作用输出毫伏级电压信号,因为 A/D 转换器的输入一般 要求 为伏级电压信号,所以由称重传感器直接输出的信号需要经过处理后,才能输入进 A/D 转换器。前级处理电路主要是对称重传感器输出的信号进行

45、滤波和 放大,使之能够符合 A/D 转换器的输入要求。 A/D 转换器主要是对输入的模拟信号进行转换,使输出为数字信号,以使 单片机 可以直接的对测量的信号进行处理。 其 测量 电路如图 3-5 所示: 图 3-5 测量体重的设计电路 3/4/1 称重传感器 ( 1) 称重传感器的技术指标 NS-TH150 称重传感器由组合式 S 型梁结构及金属箔式应变计构成,具有Rg1I N +2I N -3V-4Rg8V+7Uo6R E F5I N A 1 2 6C 1 01 0 0 u FC 1 11 0 0 u FC92 2 0 FC 1 22 2 0 FR4 7 5 0R3 7 5 0C8 0 /

46、1 u FR g 1 3 2 5V C CV+0V - -1V o 12V o 23N S - T H 1 5 0称重传感器V+V - -V C C8C L O C K7DI6/ C S5R E F +1A I N2R E F -3G N D4I C L 1 5 4 9P 1 / 1P 1 / 2P 1 / 3智能 型 身高体重仪的研制 16 过载保护装置。测量精度高、温度特性好、工作稳定等优点。广泛用于各种结构的动 、静态测量及各种电子称的一次仪表。其形状如图 3-6 示 / 技术参数 -单位 -技术指标 / a) 额定载荷 (kg)/150 b) 额定输出 (mV/V)/ 1/5 c) 非

47、线性 (%F/S)/ 0/03 d) 滞后 (%F/S)/ 0/03 e) 重复性 (%F/S)/ 0/03 图 3-6 称重传感器的形状 f) 零点输出 (%F/S)/ 50 吗? MOV R5/ #20H LCALL COMPARE JC GETSPEED_1 /40 吗? JC GETSPEED_2 /30 吗? MOV R5/ #0E0H LCALL COMPARE JC GETSPEED_3 JB FUHAO/ GETSPEED_21 /温度为负时 /跳转 MOV SPEED/ #44H /温度为正 /则声速为 349 MOV SPEED2/ #2AH RET GETSPEED_21

48、/ MOV SPEED / #3DH /温度为负时 /则声速为 313 MOV SPEED2/ #22H RET GETSPEED_3/ MOV R4/ #01H 智能 型 身高体重仪的研制 53 MOV R5/ #40H LCALL COMPARE /20 吗? JC GETSPEED_4 JB FUHAO/ GETSPEED_31/ 温度为负时 /跳转 MOV SPEED/ #43H /温度为正 /则声速为 344 MOV SPEED2/ #30H RET GETSPEED_31/ MOV SPEED/ #3EH MOV SPEED2/ #4EH /温度为负 / 则声速为 319 RET

49、GETSPEED_4/ MOV R4/ #00H MOV R5/ #0A0H LCALL COMPARE /10 吗? JC GETSPEED_5 JB FUHAO/ GETSPEED_41 / 温度为负时 /跳转 MOV SPEED/ #42H /温度为正 /则声速为 338 MOV SPEED2/ #04H RET GETSPEED_41/ MOV SPEED/ #3FH /温度为负 /则声速为 325(十六进制数) MOV SPEED2/ #7AH RET GETSPEED_5/ MOV SPEED/ #40H /温度为 0/则声速为 332(这里是十六进制) MOV SPEED2/ #

50、0D8H RET /* /两个数据( 2 字节)大小比较子程序 /* COMPARE/ CLR C MOV A/ TEMP2 SUBB A/ #80H JC COMPARE_0 SETB FUAHO /为负时 /置符号标志 COMPARE_0/ MOV A/ R3 MOV B/ R5 SUBB A/ B MOV A/ R2 MOV B/ R4 SUBB A/ B RET 智能 型 身高体重仪的研制 54 /* /***接收中断 /* INT0/ PUSH ACC PUSH PSW CLR TR0 /关闭定时器 T0 CLR EA /关中断 CLR VIC /置接收成功标志 MOV R0/ TL

51、0 MOV R1/ TH0 MOV TL0/ #7EH /定时常数重新装入 T0 MOV TH0/ #0C9H MOV A/ R0 SUBB A/ #0C9H MOV R0/ A MOV A/ R1 SUBB A/ #7EH MOV R1/ A MOV HIGHTIME/ R0 MOV HIGHTIME2/ R1 MOV R0/ 02H MOV R1/ 6DH /把***传感器离地的距离反射所需时间送入寄存器 MOV A/ R0 SUBB A/ HIGHTIME MOV R0/ A MOV A/ R1 SUBB A/ HIGHTIME2 MOV R1/ A MOV HIGHTIME/ R0 M

52、OV HIGHTIME2/ R1 /所得就是人的身高在空气中反射所需的时间 POP PSW POP ACC RETI /* /计算得到身高值 (=算出的计数值 *温度补偿后的声速在本公式中的值 /1000 cm) /* HIGH_GET/ PUSH ACC PUSH PSW PUSH B MOV PSW/ #18H MOV R2/ # HIGHTIME MOV R3/ # HIGHTIME2 MOV R1/ #SPEED2 智能 型 身高体重仪的研制 55 MOV R0/ #SPEED LCALL MUL2BYTE2 MOV R3/ #27H MOV R2/ #10H /10000 的十六进制

53、 LCALL DIV4BYTE2 MOV DISPBUF2/ R4 MOV A/ DISPBUF2 JNZ DIS1 MOV DISPBUF2/ #0AH /最高位为 0 时 /不显示 DIS1/ MOV A/ R0 MOV R0/ A MOV A/ R1 MOV R5/ A MOV R3/ #08H MOV R2/ #3EH LCALL DIV4BYTE2 MOV DISPBUF22/ R4 MOV A/ DISPBUF22 JNZ DIS2 MOV DISPBUF22/ #0AH /第二位为 0 时 /也不显示 DIS2/ MOV A/ R0 MOV R0/ A MOV A/ R1 MOV

54、 R5/ A MOV R3/ #00H MOV R2/ #64H LCALL DIV4BYTE2 MOV DISPBUF23/ R4 MOV A/ DISPBUF23 JNZ DIS3 MOV A/ DISPBUF22 /第三位为 0 时 /先看第二位是否显示 SUBB A/ #0AH JNZ DIS3 MOV DISPBUF23/ #0AH /第二位不显示时 /第三位也不显示 DIS3/ MOV DISPBUF24/ R0 POP B POP PSW POP ACC RET /* /测量体重体重值 智能 型 身高体重仪的研制 56 /* GET_1549/ MOV WEIGHT/ #00H

55、MOV WEIGHT2 / #00H /存储单元清零 CLR CS1549 MOV R0/ #2 /10 位数据中的高两位 LCALL RD1549 MOV R1/ A MOV WEIGHT2/ R1 MOV R0/ #8 /10 位数据中的低 8 位 LCALL RD1549 MOV R1/ A MOV WEIGHT/ R1 MOV R2/ WEIGHT MOV R3/ WEIGHT2 MOV R0/ #DCH MOV R1/ #05H LCALL MUL2BYTE2 MOV R3/ #04H MOV R2/ #00H LCALL DIV4BYTE2 MOV R3/ #03H MOV R2/

56、 #0E8H LCALL DIV4BYTE2 MOV DISPBUF25/ R4 /将身高第一位位送入缓冲区 2 中的第五位 MOV A/ R0 MOV R4/ A MOV R5/ R1 /由于 R7/R6 在上个除法中为 0/在此不做处理 MOV R3/ #00H MOV R2/ #64H LCALL DIV4BYTE2 MOV DISPBUF26/ R4 MOV R0/ A MOV B/ #10 DIV AB MOV DISPBUF27/ A MOV A/ B MOV DISPBUF28/ A /将小数点送入最后一位 SETB CS1549 CLR CLK1549 RET RD1549/

57、CLR CLK1549 MOV C/ DI1549 智能 型 身高体重仪的研制 57 RLC A SETB CLK1549 DJNZ R0/ RD1549 RET /* /T0 中断 /* INTT0/ CLR EA CLR TR0 CLR VIC /清接收标志为 0 MOV TL0/ #7EH MOV TH0/ #0C9H RETI /* /T1 中断 /为调时闪烁用 /* INTT1/ PUSH B PUSH ASW JB FLASHM/ FLASH1 JB FLASHD/ FLASH2 JB FLASHH/ FALSH3 JB FALSHMI/ FALH4 CLR TR0 MOV TH1

58、/ #3CH MOV TL1/ #0B0H POP ASW POP B RETI FLASH1/ MOV B/ MONTH JB PSW/0/ F1 MOV MONTH/ #00H F1/ LCALL DISPLAY_1 MOV MONTH/ B RET FLASH2/ MOV B/ DAY JB PSW/0/ F2 MOV DAY/ #00H F2/ LCALL DISPLAY_1 MOV DAY/ B RET 智能 型 身高体重仪的研制 58 FLASH3/ MOV B/ HOUR JB PSW/0/ F3 MOV HOUR/ #00H F3/ LCALL DISPLAY_1 MOV HO

59、UR/ B RET FLASH4/ MOV B/ MINUTE JB PSW/0/ F4 MOV MINUTE/ #00H F4/ LCALL DISPLAY_1 MOV MINUTE/ B RET /* /显示身高体重的 测量值 /* DISPLAY_2/ MOV R0/ #DISPBUF21 /显示缓冲区首址送 R0 ORL DISPBUF23/ #80H ORL DISPBUF27/ #80H /显示小数点所需要的 MOV R1/ #08H MOV R5/ #01H /显示最低位地址送 R3 DISPLAY10/ MOV A/ R0 DISPLAY11/ MOV R4/ A LCALL WRITE7219 INC R0 INC R5 DJNZ R1/ DISPLAY10 ANL

免责声明:
1. 《毕业设计81智能型身高体重仪的研制》内容来源于互联网,版权归原著者或相关公司所有。
2. 若《86561825文库网》收录的文本内容侵犯了您的权益或隐私,请立即通知我们删除。