基于ADS1230的高精度智能电子秤的设计。

* 来源: * 作者: * 发表时间: 2020-03-10 0:55:18 * 浏览: 151
由于中小型企业通常使用手写记录工资,这不仅增加了工作量,而且导致工资计算错误。针对上述问题,我们设计并完成了一个集成了称重和沉降功能的集成设备。该解决方案使用20位AD芯片ADS1230精确称重重量,根据重量计算出特定的工资,然后使用RFID读取器将重量和工资存储到非接触式IC卡中并显示在LCD上。工资结算。简介生产和加工的自动化已成为当前的趋势。通过电子设备进行称重和工资结算相结合,有助于提高生产效率并减少人工计算错误。本设计使用STM32系列芯片,具有专门设计的高性能,低成本,低功耗嵌入式应用ARMCortex-M3内核,时钟频率高达72M,内置32K至128K闪存,价格低于其他32位产品。因此,该设计使用STM32F103RBT6作为主控制芯片来收集,存储,显示和发送数据。 2.总体设计整个电路可分为4个模块:单片机控制器,测量模块,IC卡读写模块,OLED显示模块。具体电路如图1所示。2.1测量模块为了实现高精度测量,使用TI公司生产的20位AD芯片ADS1230对压力传感器的电压进行采样,以实现称量的数字化。 STM32读取数据,并通过均值滤波获得准确的模拟值。校准仪器的校准。该器件采用LM2940稳压5V芯片供电,输出噪声为150MVrms,可以满足设计要求。两路电源用于为芯片供电,以减少电源纹波。 ADS1230芯片在数字端为5V供电,在模拟端为5V供电。模拟信号通过AINP和AINN的两个差分信号输入输入。内部PGA将原始信号放大128倍,采样率为10SPS。 PDMN的三个数字引脚读取采样信号的模拟值。 J1,J3是压力传感器信号输出端子,J4,J6是传感器电源端子。 20位AD采样精度为0.0001%。根据实际情况,传感器的精度必须小于0.0001%。本设计使用的传感器精度为C3(1/3000),范围为0-2000g,功率为5V,精度可达0.01g。如图2所示。图3显示了从ADS1230读取数据的时序。 SCLK是AD芯片数据的时钟控制线。 DOUT数据在时钟的下降沿采样。 DOUT是AD芯片的数据线。当一个采样结束时,DOUT端子输出一个脉冲信号。它表明芯片已准备好发送数据。信号从高19位开始传输。到达0位后,它将继续发送4个时钟信号。 2.2 RFID智能卡此模块使用RC522芯片进行RF读写。 MFRC522使用高级调制和解调概念,在13.56MHz处完全集成了所有类型的无源非接触式通信方法和协议,并支持ISO14443A多层应用程序。其内部发射器部分可以驱动读取器天线与ISO14443A / MIFARE卡和应答器通信,而无需其他电路。接收器部分提供了强大而有效的解调和解码电路,用于处理符合ISO14443A要求的应答器信号。数字部分处理ISO14443A帧和错误检测(奇偶校验,CRC)。此外,它支持用于验证MIFARE系列产品的快速CRYPTO1加密算法。 MFRC522支持MIFARE高速非接触式通信,双向数据传输速率高达424kbit / s。 M1卡的容量为8K位EEPROM,共有16个扇区,如图4所示。从扇区0到扇区15,一个扇区中有4个块,每个块为16字节,以块为访问单元,每个扇区都有一组密码和访问控制。 32位只读卡号位于0扇区和0块位置,并且读写距离在10mm之内。当智能卡工作时,它将通过电磁感应原理读取M1中的数据。 M1卡读入时内部数据,则需要先验证密码。成功验证后,它可以进一步读取每个数据块。 RC522芯片采用SPI模式通信,并通过MFSDA,MFSCK,MFMOSI,MFMISO和MFRST的5个引脚进行读写数据,从而确保了微控制器的快速读取和稳定性。图5显示了RC522 RF读写电路。该软件读取以下步骤:1)重置RC522:RC —重置()2)找到卡并获取卡类型:RC —请求(卡搜索方法,卡类型代码)3)防冲突获取卡序列号:RC —Anticoll(卡序列号)4)所选卡:RC—选择(卡序列号)5)验证卡密码:RC—AuthState(密码验证模式,块地址,密码,卡序列号)6-1)读取一张来自M1卡的数据:RC-Read(块地址,读取数据)6-2)从M1卡中写入一个数据:RC-Write(块地址,写入数据)7)命令卡进入休眠状态:RC—停止()2.3 OLED显示模块OLED显示技术具有自发光的特性。它使用非常薄的有机材料涂层和玻璃基材。当电流通过时,这些有机材料将发光,并且OLED显示屏的屏幕视角大,工作电流为5mA,从而节省了电能。 OLED显示模块的数据写入方法可分为IIC,3-WireSPI,4-WireSPI,8位68XX并行,8位80XX并行5种类型。我们使用4-WireSPI模式。两个命令控制位CS和DC,以及两个数据控制位D0和D10Lro在行中具有128点的分辨率,在列中具有64点的分辨率。它们具有显示保持功能。在OLED屏幕上显示用户卡号,称重值和当前工资。按上下键切换当前状态,显示总薪水,最后收到的薪水,最后的称重值等。3.软件设计高精度智能电子秤需要完成物体重量的测量,读取和读取。写入卡数据,并显示相关信息三部分。通过主程序初始化微控制器时钟,配置ADS1230测量模块和微控制器的引脚,配置RC522读写RF模块和微控制器的引脚,最后配置按键,OLED和OLED的引脚。微控制器。配置完成后,当电子秤没有重量时,测量AD值。但是,由于系统需要一次维护稳定性,因此请计算两次连续两次之间的重量差是否小于0.01g。连续计数10次不到0.01g后,此时确定该值。没有重量值作为原点。然后初始化计时器,最后进入空闲状态,等待计时器中断。主要流程如图6所示。ADS1230的测量速率相对较慢,仅为10SPS,并且需要通过软件过滤一次。为了使测量准确,在称量过程中需要收集4个测量数据,并且减去最大值和最小值后,将剩下的两个数字的平均值作为最终的AD测量值,因此测量大约需要400毫秒。物体重量。将计时器计时设置为100ms,在前500ms内读取AD测量值,然后在接下来的100ms内读取卡号,在接下来的100ms内显示重量和卡号,然后确定用户是否确定当前时间信息。如果按下该按钮,则表示确认信息,然后将物体重量数据和工资数据写入卡号,并返回物体重量测量,如果没有按下按钮,则继续物体重量测量。具体的定时中断过程如图7所示。4.结束语通过实际生产,实验结果表明测量结果可以精确到0.01g,测量结果在0-2000g范围内基本没有偏差。通过市场调查表明,高精度智能电子秤可用于各种中小企业的重量和工资结算,例如测量水晶和珍珠的工资,这对加速工作效率具有重要作用。企业。