物联网嵌入式技术课件:智能电子称重系统_第1页
物联网嵌入式技术课件:智能电子称重系统_第2页
物联网嵌入式技术课件:智能电子称重系统_第3页
物联网嵌入式技术课件:智能电子称重系统_第4页
物联网嵌入式技术课件:智能电子称重系统_第5页
已阅读5页,还剩74页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

智能电子秤重系统物联网嵌入式技术项目引导案例

现代生活中,越来越多的场合基本已经实现智能化,例如物流园区内的包裹智能分拣、超市购物结算时的智能称重检测、大型货车通过收费卡口时的称重计费等等,这些场合都借助了电子称重系统,通过对物品的自动称重来进行相应的结算及处理。生活中有哪些常见的电子秤?项目引导案例生活中有哪些常见的按键面板?项目引导案例生活中有哪些常见显示器?项目引导案例数码管普通LCD常见的LCD屏OLED屏采用ADC采集传感数据任务一职业能力目标01任务描述与要求02知识连接03任务准备04任务实施05任务小结06任务拓展07任务一电子秤采集称重传感器数据了解STM32的ADC和称重传感器的知识;掌握STM32的ADC配置和称重传感器数据的采集。能根据MCU编程手册,利用STM32CubeMX软件,准确对ADC进行配置能利用重量传感器的知识,通过编写代码,准确获取重量数据职业能力目标01知识目标技能目标职业能力目标01任务描述与要求02知识连接03任务准备04任务实施05任务小结06任务拓展07任务一电子秤采集称重传感器数据电子秤采用的重量传感器输出的数据为模拟量,本任务要求使用STM32的ADC进行重量传感器数据的采集,将获取的重量数据通过串口输出。任务描述:任务要求:通过STM32CubeMX软件进行ADC配置;根据ADC的知识,获取传感器数据;将获取的重量数据通过串口输出。02任务描述与要求职业能力目标01任务描述与要求02知识链接03任务准备04任务实施05任务小结06任务拓展07任务一电子秤采集称重传感器数据STM32F103VET6的ADC称重传感数据获取2303知识链接ADC11认识ADCADC主要参数2ADCADC03

小组讨论:小组讨论自己之前学的或者自己了解的ADC知识认识ADC03ADC,Analog-to-DigitalConverter的缩写,指模/数转换器或者模拟/数字转换器。是指将连续变量的模拟信号转换为离散的数字信号的器件。真实世界的模拟信号,例如温度、压力、声音或者图像等,需要转换成更容易储存、处理和发射的数字形式。模/数转换器可以实现这个功能,在各种不同的产品中都可以找到它的身影。1认识ADCADC主要参数2ADCADC主要参数03转换精度转换速率量化误差采样时间分辩率ADC的主要参数:思考一下,ADC有哪些参数?ADC03分辨率是指ADC输出数字量的最低位变化一个数码时,对应模拟量的变化量,A/D转换器的分辨率是指使输出数字量变化一个最小量时模拟信号的变化量,定义为满刻度与2n的比值,通常以数字信号的位数来表示。分辨率转换精度转换速率采样时间量化误差ADC03转换精度是指实际ADC输出的数字量与理想的ADC输出的数字量的转换误差,绝对精度一般以分辨率为单位给出,相对精度则是绝对精度与满量程的比值。分辨率转换精度转换速率采样时间量化误差ADC03转换速率是指完成一次从模拟转换到数字的模/数转换所需的时间的倒数。分辨率转换精度转换速率采样时间量化误差积分型ADC的转换时间是毫秒级,属低速AD全并行/串并行型ADC可达到纳秒级属高速AD逐次比较型ADC是微秒级,属中速ADADC03采样时间的倒数是采样速率,通俗的讲采样频率是指处理器每秒钟采集多少个信号样本。为了保证转换的正确完成,采样速率必须小于或等于转换速率。分辨率转换精度转换速率采样时间量化误差采样时间是指两次转换的间隔采样时间。注意:ADC03一个分辨率有限的ADC的阶梯转换特性曲线与具有无限分辨率的ADC转化特性曲线(直线)之间的最大偏差就是量化误差。通常是1个或半个最小数字量的模拟变化量,表示为1LSB、1/2LSB。分辨率转换精度转换速率采样时间量化误差A/D转换器把模拟量转化为数字量后,是用数字量近似表示模拟量的,这个过程称为量化,量化误差是由于ADC的位数有限而引起的误差。STM32F103VET6的ADC称重传感数据获取2303知识链接ADC1STM32F103VET6有3个ADC,精度为12位,其中ADC1和ADC2都有16个外部通道,ADC3有14个外部通道。ADC的模式非常多,功能非常强大,具体构成详见项目四任务一知识储备。STM32F103VET6的ADC031ADC时钟采样时间2STM32F103VET6的ADCADC输入时钟ADC_CLK由PCLK2经过分频产生如果我们设置PCLK2=HCLK=72MADC时钟03分频因子选择6ADC_CLK=12M可以是2/4/6/8分频1ADC时钟采样时间2STM32F103VET6的ADC采样时间03ADC使用若干个ADC_CLK周期对输入的电压进行采样,采样的周期数可通过STM32CubeMX软件设置,每个通道还可以分别用不同的时间采样。采样周期最小是1.5个,即如果我们要达到最快的采样,那么应该设置采样周期为1.5个周期,这里说的周期就是1/ADC_CLK。STM32F103VET6的ADC称重传感数据获取2303知识链接ADC11称重传感模块电阻应变式传感器的测量2称重传感数据获取称重传感模块标号⑥U+J1接口,测量直流电桥平衡电路输出的正端电压,即AD623正端输入(3脚)电压;03YZC-1b称重传感器;称重传感器桥式电路的接口标号③平衡调节电位器;标号④桥式电阻应变片平衡电路;标号⑤信号放大模块;称重传感模块信号AD值接口J3,测试经信号放大模块放大后电路输出的电压,该电压由AD623(6脚)输出,经R3和R7分压后采集R7的电压03UJ2接口,测量直流电桥平衡电路输出的负端电压,即AD623负端输入(2脚)电压接地GND接口J4称重传感模块03外接电阻后,可编程设置增益,其增益最高可达100倍。04在无外接电阻的条件下,它被设置为单位增益05信号放大模块主要利用AD623完成信号的差动放大01它允许使用单个增益设置电阻进行增益编程03它能在单电源(+3v~+12v)下提供满电源幅度的输出02称重传感模块03它通过提供极好的随增益增大而增大的交流共模抑制比而保持最小的误差,线路噪声及谐波将由于共模抑制比在高达200Hz时仍保持恒定而受到抑制。1虽然在单电源方式进行优化设计,但当它工作于双电源(±2.5~±6v)时,仍能提供优良的工作性能。2称重传感模块传感器在受力时,电桥平衡发生变化,差分电压Uo通过AD623放大后变成单端电压输出,输出电压经过分压后作为AD转换器的输入模拟电压,即模块中信号AD值对地电压UA,公式为:03称重传感模块信号放的放大系数为:R6为10KΩ,R7为20KΩ,Rg为100Ω03称重传感模块031用万用表的电压档(mV档)测量模块中Uo+和Uo-两个测试口的电压可以获得传感器电路的输出信号Uo2用万用表电压档(1档)测量模块中信号AD值测试口的对地电压可以获得放大后的输出电压UA。3可以将测量所得的UA与理论值进行比对,并进行误差分析。注意:由于差动信号直流放大时存在零点漂移,当U=0时,UA实际输出不一定为0,进行测量计算时要扣除电压初始值UA0。1称重传感模块电阻应变式传感器的测量2称重传感数据获取电阻应变式传感器的测量在实际应用中,四个电阻应变片阻值不可能做到绝对相等,导线电阻和接触电阻也有差异,增加补偿措施使得器件结构相对麻烦,因此电阻应变式传感器构成的电桥在实际测量时必须调节电阻平衡。03电阻应变式传感器的测量其中R和RW组成电桥的平衡网络,通过调节Rw可使得Uo输出为0,实现电桥电路平衡。当传感器受应力时,电桥电路中4个应变片阻值发生相应变化∆Ri,电桥失去平衡,电路输出差动信号Uo,,可得应力和电压的关系为:03电阻应变式传感器的测量式中定义为应力与电压的转变系数,K、A、E可视为常数,U是直流电桥供电电压,因此应力与电压的转变系数K’可以视为常数,应力及其引起的电压变化是线性的关系在实际应用中,四个应变片的阻值变化∆Ri不一定相等,且K也会因为阻值的变化产生微小偏差,因此应力及其引起的电压变化是非线性关系,要注意误差的分析。03电阻应变式传感器的测量直流电桥输出的差动信号Uo较小,不便于测量,一般将它通过差动放大器放大后,再利用仪表进行测量,或者将信号经AD转换器转换后给控制系统进行判断并显示。03职业能力目标01任务描述与要求02知识连接03任务准备04任务实施05任务小结06任务拓展07任务一电子秤采集称重传感器数据设备资源:序号设备/资源名称数量是否准备到位(√)1STM32F103VET6模块1

2称重传感模块1

3杜邦线1思考一下,此次任务会用到哪些设备资源呢?任务准备04职业能力目标01任务描述与要求02知识连接03任务准备04任务实施05任务小结06任务拓展07任务一电子秤采集称重传感器数据烧写程序205任务实施添加代码1添加代码1进行STM32CubeMX配置添加代码包23添加代码程序4编译代码进行STM32CubeMX配置05参考项目1中的任务1,完成以下操作打开STM32CubeMX,选择NewProject进入芯片选择界面在搜索栏输入stm32f103ve,右侧会出现STM32F103VE的芯片,选择LQFP封装的,双击进入芯片配置界面。点击SystemCore->RCC,HighSpeedClock(HSE)和LowSpeedClock(LSE)都选择Crystal/CeramicResonator。点击SYS,Debug选择SerialWire进行STM32CubeMX配置(2)点击Connectivity->USART1,配置串口一,MODE选择Asynchronous,BaudRate选择115200Bit/s,DataDirection选择ReceiveandTransmit,然后点击NVICSettings,勾选USART1globalinterrupt,使能串口中断。05进行STM32CubeMX配置(3)点击ADC1,勾选IN0,也可以点击PA0的引脚进行选择05进行STM32CubeMX配置(4)点击ClockConfiguration进行如下图的时钟配置05进行STM32CubeMX配置(5)点击ProjectManager,点击Project设置文件名和保存的位置,Toolchain/IDE选择MDK_ARM。(6)点击CodeGenerator,进行勾选设置。(7)最后点击右上角的GENERATECODE生成初始化代码。05添加代码1进行STM32CubeMX配置添加代码包23添加代码程序4编译代码添加代码包(1)单击编译按钮开始编译,若0个错误表示编译通过。05添加代码包(2)在项目工程文件夹的MDK-ARM文件夹下新建一个HARDWORK文件夹05将delay和Trace两个文件夹复制进去添加代码包(3)右键项目文件名,选择AddGroup添加组,将NEWGroup改为HARDWORK,05双击HARDWORK,选择delay和Trace文件夹添加delay.c和Trace.c文件添加代码包(4)添加的文件直接编译会报错,需要包含文件夹的路径,如下图就是添加Trace文件的路径,使程序可以找到.h文件(5)按照相同的方法将delay的文件路径添加进去05添加代码包添加完文件后直接编译也会报错,这时我们双击trace.c将里面的“UART_HandleTypeDefhuart1;”注释掉,如下图所示05再次进行编译就不会报错添加代码1进行STM32CubeMX配置添加代码包23添加代码程序4编译代码添加代码程序(1)添加头文件在MDK-ARM中双击打开Application/User下的main.c文件,在添加头文件代码处添加trace.h、delay.h头文件05添加代码程序(2)添加变量在/*USERCODEBEGINPV*/和/*USERCODEENDPV*/之间添加变量05添加代码程序在/*USERCODEBEGINPFP*/和/*USERCODEENDPFP*/之间添加函数声明05添加代码程序在最后的“#endif/*USE_FULL_ASSERT*/”后面进行函数实现05添加代码程序在/*USERCODEBEGINWHILE*/和/*USERCODEEND3*/之间添加主程序代码05添加代码1进行STM32CubeMX配置添加代码包23添加代码程序4编译代码编译代码代码添加完成后,单击“重新编译”按钮完成编译,确保编译准确无错误。05烧写程序205任务实施添加代码1烧写程序1硬件环境搭建固件下载23结果验证硬件环境搭建把STM32F103VET6模块的PA0引脚称重传感器的信号AD值

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论