深圳鼎代理芯海盛合科技系芯海一级代理商,代理芯海高精度ADC芯片,SOC芯片,wifi及蓝牙模块
在这个项目中,使用C8051微控制器开发套件、称重传感器和Simplicity Studio IDE制作一个称重秤测量的重量将显示在LCD屏幕上液晶显示器该项目中使用的液晶显示器是硅实验室的一部分C代理芯海P2400丹麦克朗开发工具包。
图1Silicon Labs CP2400DK开发套件(C8051微控制器和LCD控制器)图片由数字键.LCD设备本身的制造商零件号(图2)为VIM-878-DP-RC-S-LV. 如果您包括小数点和撇号(每个数字),这个“14段”LCD显示器将代理芯海变成16段显示。
当把8位数的16段相加时,我们看到总共128段这种128段显示器要求使用128段驱动程序,硅实验室决定使用驱动程序p/nCP2400型(图3)
图2液晶屏,8位数字各有16段(共128段)。图片由数字键.
图3128段LCD驱动程序。图片由硅实验室(第1页和第22页)。称重传感器我选择使用的称重传感器是由 Uxcell公司,型号# a14071900ux0057 .
图4称重传感器图片由亚马逊.这种特殊的称重传感器通常称为直杆式称重传感器或平行梁式称重传感器通常情代理芯海况下,此类负载为额定负载;本项目中使用的最大重量为10公斤(或22磅)其广告额定输出为1±0.15mV/V。
这意味着,当称重传感器施加其最大额定重量(本例中为10kg)时,每1V施加在称重传感器励磁上的输出电压为1mV(±0.15mV)(见下图)当我说电压是“施加代理芯海在测压元件上”时,电压实际上是施加在惠斯通电桥应变计的励磁引线上。
同样的,这就是惠斯通应变计产生输出电压(见下图)
图5称重传感器的惠斯通电桥应变计示意图对于这个项目,我将采用5V作为励磁;因此,当向称重传感器施加10kg负载时,其输出将为5.0mV(代理芯海±0.75mV)因为5.0mV是一个很小的电压,它需要在被发送到微控制器之前被放大。
旁注:一些微控制器不是在这个项目中使用的有差分ADC输入;单端输入被认为是大多数微控制器的标准输入当使用带有单端ADC输入的微控制器时,当传感器提供差分输出信号时,一个差分放大器必须利用这种类型的放大器将差分信号转换代理芯海为单端信号,可使用标准单端ADC进行测量。
仪表放大器我选择使用的差分放大器实际上被称为仪表放大器,或安培我用INA126PA公司输入安培数德州仪器-我买了这个装置从Digi Key3.15美元但是,当它不能像广告中所说的那样运行时,经过大约一个小时的故障排除,我决定转移到B计划:使用AD627型(来代理芯海自模拟设备),我也买了。
我买了这个零件鈥数量一-从Digi Key以一个惊人的价格 $8.45! 我不知道这些安培表要花这么多钱!幸运的是,这个装置工作正常因此,我想我将来会使用模拟设备中的in-amp器件,而不是TI部件,尽管一般来说,我是TI部件和价格的粉丝。
设置这两个单位的增益很简单:只需要一代理芯海个外部电阻此外,TI和模拟设备部分都被宣传为单电源或双电源设备,我更喜欢使用单电源
图6模拟设备仪表放大器(AD627)简化示意图图片由模拟设备(第14页).项目#描述/来源成本(每个)其他信息1C2400DK开发套件$148.75用户指南快速入门指南C8051F930产品介绍注:示意图见。
用户指南2代理芯海试验板$8.98或同等产品3跨接导线套件$6.20或同等产品410kg称重传感器$8.14或同等产品5仪表放大器$8.45数据表61 kΩ电位计$2.41数据表7机螺钉(M4-0.7 x 25mm)。
数量2$0.76或同等产品8机用螺钉(M5-0.8 x 25mm)数量2$0.76或同等产品连接/示代理芯海意图微控制器使用SPI公司用于与LCD驱动程序通信的接口(SPI通道1)如下图7所示,Simplicity Studio的硬件配置GUI显示了如何配置C8051的SPI。
图7SPI接口配置选择仪表放大器的增益如前所述,施加在称重传感器上的励磁电压为5.0VDC,将产生5mV的输出电压(满载22 lb代理芯海s)虽然微控制器的ADC的输入范围是0到3.3V,但我希望3V对应于全负荷(22磅)。
这将为称重传感器的过载提供一些净空,即满载的120%,或26磅在这些条件下,我可以计算出所需的放大器增益,然后选择适当的增益电阻值(RG ).5mV∗Gain=3000mVGain=3000mV/5mV=600
RG代理芯海公式(perAN627产品介绍第22页):RG=200kΩ Gain−5RG=336Ω
深圳鼎盛合科技系芯海一级代理商,代理芯海高精度ADC芯片,SOC芯片,wifi及蓝牙模块
图8连接图重要的是去耦电容器(Cone)尽可能靠近AD627的电源插脚配置微控制器开发工具包在给微控制器开发套件通电之前,在完代理芯海成所有连接后,请确保按如下方式配置:跳线:J11:VBAT到GNDJ12:VDD到VIO。
J17:VBAT_引脚到VBAT开关:SW4:设为“2单元”电源开关(SW5)置于“关闭”位置电缆:将带状电缆调试适配器连接到J9将USB调试适配器连接到电脑向接头P2施加5.0 VDC电压连接称重传感器底板。代理芯海
令我惊讶的是,测压元件本身有螺纹孔这使得在将称重传感器连接到底板时非常方便再一次,令我惊讶的是,一组洞比另一组大嗯,我不知道制造商为什么这么做,但是,尽管如此,我还是在当地的五金店找到了合适的螺丝数量2:机械螺钉,M4-0.7 x 25mm
数量2:机用螺钉,M5-0.8 x 25mm注:这四个螺钉(代理芯海25毫米)的长度取决于垫片和底板本身的厚度。
图9称重传感器安装在底板上图10完整的称重传感器系统(sans 5VDC电源)点击放大.固件类似于我的另一个项目(在转速表和速度表上增加LCD和键盘),在这个项目中,我充分利用了Silicon Lab的示例LCD项目(CP240x_LCD_example)代理芯海,这使我的固件编写任务更加容易。
输入放大器的输出连接到端口0.6,这是微控制器ADC的输入下面是我在固件中加入的特性/优点的列表:固件在将数据发送到LCD屏幕之前,采集并平均200个测量电压的样本如果施加的负载大于或等于23磅,LCD将显示“过载”。
当系统首次通电时,固件将显示皮重(即启动时的重量变代理芯海为零重量)LCD配置为在小数点后显示一位数字//----------------------------------// Main Application Loop。
//----------------------------------while (1) { //代理芯海-----------------------------------------------------------------------
// Measure Analog Value//------------------------------------------------------代理芯海-----------------//// Take ADC conversion.
//// Initiate a Conversion AD0INT = 0; // clear ADC0 conv. complete flag
AD0WINT = 0; // clear window代理芯海 detector flag AD0BUSY = 1;
// initiate conversion// Wait for conversion to completewhile(!AD0INT); // Vref (mV)
// measurement (mV) =代理芯海 --------------- * result (bits)// (2^10)-1 (bits) mV = ADC0; mV *= VREF; mV /=
1023; lbs = (float) (mV * 22.0 / 300.0代理芯海); // The multiplying factor is actually 22lbs/3000mV, but 300
// is used for displaying one digit after the decimal point.if(zero_scale == 0) // Used 代理芯海for zeroing the scale during power-up.
{ zero_offset = lbs; zero_scale = 1; } lbs = (lbs - zero_offset); Averag代理芯海eAccumulator += lbs;
// Add the current lbs measurement to the accumulator. AverageMeasurements--; // Decrement the measurement counter.
if(Aver代理芯海ageMeasurements == 0) { // Calculate the average value: divide the summed AverageAccumulator by the
// number of measurements. 代理芯海lbsAverage = (AverageAccumulator / 200.0); AverageAccumulator = 0;
// Reset AverageMeasurements = 200; // Resetif(lbsAverage >= 230) 代理芯海// If the measured weight is greater than equal to
// 23.0 lbs, then display "OVERLOAD" on the LCD screen.// The load cell is rated at 10kg (or 22 lbs)代理芯海, with
// safe overload of 120%, or 12kg (26 lbs). { sprintf(display_string, "OVERLOAD"); } else
sprintf(display_string,代理芯海 "d lbs ", (unsignedint) lbsAverage); } //-----------------------------------------------------------------------
// Update LCD//-----代理芯海------------------------------------------------------------------//// Update the LCD Display
// LCD_OutString(display_string); } 代理芯海 这个项目的所有代码都可以从下面的链接下载生成并加载代码,并验证刻度的准确性称重称重秤在下载、构建和加载代码之后,我使用厨房秤作为测量体重的参考/比较。
如视频(下图)所示,我放置了各种重量样本(我大学时的旧课本!)首先是厨房秤,然后是称重传感器系统正如你所观察到的,两个刻度在显示的测量值上非常代理芯海接近制造真正产品的下一步如果您或我决定使用定制的PCB设计基于此项目制作一个实际的重量测量系统,请务必遵循中所述的接地和布局建议数据表(第20页)。
此外,用金属板代替木制底板将增加物理设计的稳定性和稳健性称重快乐!
深圳鼎盛合科技系芯海一级代理商,代理芯海高精度ADC芯片,SOC芯片,wifi及蓝牙模代理芯海块