新闻中心

EEPW首页 > 嵌入式系统 > 市场分析 > 基于MXT8051通用配料控制器的设计

基于MXT8051通用配料控制器的设计

—— A General Mixer Controller Based on MXT8051
作者:路东昕 上海交大自动化工程研究中心时间:2010-06-29来源:电子产品世界收藏

  引言

本文引用地址:http://www.eepw.com.cn/article/110392.htm

  混凝土是建筑行业最重要的材料,在混凝土的生产原料中,除水泥、沙石外最重要的原料当属减水剂,减水剂是一种表面活性材料,加入后对水泥颗粒起扩散作用,把水泥胶体中包含的游离水释放出来,虽然其在混凝土中比例微小,但作用巨大,可减少拌合用水,改善和易性,节约水泥,提高强度。

  减水剂复配装置主要解决的是减水剂的生产、稀释、分装等生产过程,目前多数减水剂复配装置控制系统的解决方案是“重仪表+PLC+HMI”或“称重仪表+工控机+IO板”的方案,在实施过程中发现,这些方案成本高,稳定性可靠性差,不适用于一些成本敏感的项目。

  根据上述需求,本文以科技的芯片为核心设计并测试了通用配料控制器,其集成了称重仪表、PLC、LCD显示等功能,很好的满足了减水剂复配控制的需求,如需应用到其他行业,只需将软件稍加修改即可。

  总体方案设计

  本文采用芯片驱动称重芯片,读取数值,根据预先设定的配方数据进行自动产品复配操作,包括自动加水、自动添加配料(固态或液态)、自动搅拌、自动出料等操作。

  系统使用16位7段液晶显示器显示重量信息、设定信息、状态信息等,通过5个按键进行参数设定、系统标定、运行控制、显示控制等操作。

  配方可由RS232或RS485连接到上位机进行,上位机软件可读取、装载配方数据,也可实时读取称重数据。

  上位机软件采用VB.NET 2005开发,可设置串行通信参数、测试控制器IO、读取称重数值、管理配方数据等。

  硬件设计

  芯片

  MXT8051是以高速单指令周期 8051 为核的 MCU。拥有丰富的外设,包括 PWM、UART、WDT、Timer 等,1KB大容量外部RAM,内嵌 32Kx8 可在线编程 FLASH,10 位 ADC,8位DAC,若干OP,36x4 LCD driver、POR以及可编程增益放大器(PGA)等模拟电路。电路集成片上调试系统,通过标准 JTAG接口,快速诊断复杂 SoC,该调试系统具有不占用任何硬件资源,支持全速运行、单步运行、硬件断点、软件断点以及观察内部特殊功能寄存器、程序指针和内部RAM 等功能。上位机通过标准 JTAG 接口以及用户定义指令执行在线编程和在线调试。

  称重专用芯片

  是一款专为高精度电子秤设计的24位AD转换器芯片。与同类型其它芯片相比,该芯片集成了包括稳压电源、片内时钟振荡器等其它同类型芯片所需的外围电路,具有集成度高、响应速度快、抗干扰性强等优点。

  硬件电路设计

  图2 所示为系统硬件电路设计框图,系统设计成两块电路板,IO板和MCU板。MCU板上集成有称重专用24位Σ-ΔDA转换芯片,RS232或RS485通信,16位7段LCD显示,IO板上集成有7路继电器IO输出,5路光电隔离IO输入,一路模拟量输出,2路模拟量输入,1路PWM光电隔离输出,5键键盘输入。

  HX711外围电路以及电压基准电路设计,采用TL431芯片,通过电阻设定成5V输出,同时作为传感器电桥激励和HX711的参考电压,这样可以有效抵消温漂造成的系统误差(如图3所示)。

  软件设计

  控制器软件设计

  HX711芯片的串口通讯线由管脚 PD_SCK 和 DOUT 组成,用来输出数据,选择输入通道和增益。 当数据输出管脚 DOUT 为高电平时,表明AD 转换器还未准备好输出数据,此时串口时钟输入信号 PD_SCK 应为低电平。当 DOUT 从高电平变低电平后,PD_SCK 应输入25至27个不等的时钟脉冲(如图4)。其中第一个时钟脉冲的上升沿将读出输出 24 位数据的最高位(MSB),直至第 24 个时钟脉冲完成,24位输出数据从最高位至最低位逐位输出完成。第25至27个时钟脉冲用来选择下一次AD转换的输入通道和增益,见表1。

  PD_SCK 的输入时钟脉冲数不应少于25和多于27,否则会造成串口通讯错误。 当 AD 转换器的输入通道或增益改变时,AD转换器需要4个数据输出周期才能稳定。DOUT 在4 个数据输出周期后才会从高电平变低电平,输出有效数据。

根据图4所示的时序逻辑,读取通道A,增益128倍,其读取函数如下:
unsigned int ReadCount()
{
 unsigned int ADval;
 unsigned long Count;
 unsigned char i;
 PCR0 = 0xFB;  //避免与I2C总线冲突
      
 ADSK = 0;
 Count = 0;
 while(ADDO);
 
 for (i=0;i<24;i++)
 {
  ADSK = 1;
  Count = Count<<1;
  ADSK = 0;
  if(ADDO) Count++;
 }
 ADSK = 1;
 ; 
 ADSK = 0;
    //判断是否为负值,并显示符号
 if((Count & 0x800000) == 0x800000)
 {
  Count = ~(Count - 1);
  LCDDATA16 |= 0x80;
 }
 else
 {
  LCDDATA16 = 0x00;
 }
 ADval = (int)(Count >> 8);//取高十六位有效值
 B_AdFinish = 1;
 return(ADval);
}

  主程序流程如图5所示。

  程序主要由初始化代码和主循环代码构成。

  上位机软件设计

  上位机软件采用VB.NET 2005开发,主要功能为串行通信参数设置、IO测试、称重数值读取、配方数据管理。

  软件运行界面如图6所示。

  该软件的固件技术为串行指令的接收和发送,指令包括IO设定指令、IO状态读取指令、称重数值读取指令、配方数据写指令、配方数据读指令,其代码实现如下:

'0.5秒定时发送 读重量指令
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
command(0) = &H5A

If SerialPort1.IsOpen Then
SerialPort1.Write(command, 0, 1)
    End If
End Sub
   十六进制数5A 表示读取控制器的称重数值;
'IO输出 指令
Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged
    If CheckBox1.Checked Then
        command(0) = &HF9
 Else
  command(0) = &HF1
 End If
    If SerialPort1.IsOpen Then
        SerialPort1.Write(command, 0, 1)
    End If
End Sub
十六进制数F?表示该指令为IO输出指令,其中第3位数据表示开关状态,1表示闭合,0表示断开,0,1,2位合起来表示IO通道号;
'读取输入信息
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
 command(0) = &HF0
 If SerialPort1.IsOpen Then
  SerialPort1.Write(command, 0, 1)
 End If
End Sub
 十六进制数F0表示该指令为IO状态读取指令,当单片机接到此指令时,立即发送重量信息给上位机,格式如下:“I_?”,其中 ?即各个IO的状态,用1表示接通,0表示关断。

  结语

  目前,我国半导体产业落后于西方巨头,作为国产半导体产业的领军企业,拥有雄厚的基础,本文以时代民芯科技的MXT8051单片机为核心,研发通用配料控制器,因为该芯片拥有丰富的片内资源,可以简化设计,同时,选用国产芯片,也是为民族半导体产业振兴添砖加瓦。

  本文的通用配料控制器,除了可以提高减水剂复配效率,改善产品质量外,还可应用于其他相关的物料复配行业。此外,由于设计和测试时间有限,该控制器设计中还存在很多遗憾,有很大改进空间,比如:可以应用片内运放调节零点,提高称重精度;也可以将开关电源集成入控制器,这样可进一步降低用户成本,并节省空间。

  参考文献:

  【1】MXT8051芯片数据手册,时代民芯科技,2009年

  【2】HX711中文 数据手册,芯海科技,2006年

  【3】51单片机C语言应用开发技术大全,人民邮电出版社,刘坤等,2008 年

  【4】Visual Basic 2005高级编程,(美)Bill Evjen, Billy Hollis, Rockford Lhotka 等 ,2006 年

51单片机相关文章:51单片机教程


c语言相关文章:c语言教程


称重传感器相关文章:称重传感器原理


评论


相关推荐

技术专区

关闭