0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于主控STM32控制系统的硬件设计喷绘系统设计

电子设计 来源:2015年微型机与应用第1期 作者:刘 晋,苏 臣 2021-03-09 11:50 次阅读

0 引言

由于喷绘机喷绘过程中采用的是压电喷头工作原理,为保证喷绘出图像清晰细腻,喷绘机需要在同一温度下提供稳定的驱动电压对压电晶体进行控制。如何在精准的条件下根据室内温度实时、快速、方便地更改驱动电压和配置数据值得研究。

1 系统设计理念

喷头的驱动电压VDD2(t)取决于喷头容积电压Vrank、基于不同厂家不同颜色的油墨粘滞度而提供每色油墨与标准油墨的修正值Voffset电压、不同颜色的油墨在不同温度下需要的驱动电压补偿值Vdiff(t),即VDD2(t)=Vrank+Voffset+Vdiff(t)。不同颜色的油墨在不同的温度下驱动电压的补偿值Vdiff(t),称之为T-V数据。

不同厂家油墨温压数据不同,厂家会根据每种墨水的种类和颜色在出厂前给出一组关于墨水在不同温度下的电压补偿值,根据喷头墨腔内部墨水温度变化动态地调整每个喷头的驱动电压以保证喷射出的墨水点滴大小一致、视觉效果更清晰。为防止在掉电的情况下数据丢失和避免不小心更改,数据通常存储在只读存储器中。EEPROM存储量有限又需存储不同种类的T—V数据时,可以将数据通过算法[2]进行压缩后存储在ROM中。当今市场喷绘机数量越来越多,出于对喷绘机性能考略,本设计在温压数据读取时避免使用算法降低速度,借助嵌入式经典的“空间换时间”理论,以日本精工集团的IRH1513D喷头为研究对象,在24C16EEPROM中存储配置数据。每次初始化后通过I2C通信机制读数据,工作时喷头需要更新电压时通过DMA方式快速传送温度数值(A/D转化值),迅速更新喷头所需驱动电压。过程中发现喷头工作有误差时借助显示工具设置按键对其校验,过程中适当改进运算形式来提高喷头控制系统效率。

2 基于系统的硬件设计

o4YBAGBG72yALxdGAAFNgEv0Ds0184.png

图1为控制系统硬件结构建构。从图可看出设计中以STM32为主控,选取支持I2C通信机制、2 KB存储量的24C16EEPROM作为外部存储器,主控中集成的I2C 2的时钟线SCL(PB10引脚)和SDA线(PB11引脚)与EEPROM的SCL和SDA分别通过外接一个上拉4.7 k?赘电阻连接。设计中主控集成I2C 2作为外部数据存储器的时钟和数据的发送,24c16EEPROM作为从设备,选取200 kHz的读取速度。通过主控中的I/O口读取温度模拟量,显示调整数据时采用UART或128x64LCD,采用128x64的静态LCD主要方便客户使用,研发者主要使用UART进行校正,外扩按键为了校验误差或测试喷头状态等。上电开始和结束时需给喷头发送开关波形数据、命令,工作时读取喷头的状态需要实时更改主控PWM即补偿电压。系统中硬件按键消抖在主控中延时实现,通过按键可进入校验、T-V数据输入、喷头测试状态。为快速处理数据,主控内A/D转化值借助DMA传输方式。

控制系统采用一个主控STM32控制一个喷头形式,所以外存储上不需存储墨水的颜色和控制喷头型号等数据,喷头采用日本精工集团的IRH1513D。系统上电初始化后,主控通过I2C通信机制把24C16EEPROM作为从设备读取喷头Vrank容积电压、温压曲线、开关波形等数据。而且此程序中使用容积电压Vrank、Voffset和ADCValOff以十倍进行存储运算,每个数据定义2 B即16 bit。综合考略24C16EEPROM外存储单元,地址分配设计为:地址0x00~0x166共358 B存储温压偏移曲线数据;地址0x200~0x201存储16 B墨水的容积电压Vrank;地址0x202~0x203存储此种油墨修正电压Voffset;地址0x204~0x205存储喷头25℃时需要校准参数本底偏移值AdcValBOff;地址0x206~0x207存储当PWM OCR1为高点电压比较值时所对应十倍电压Hm;地址0x208~0x209存储当PWM OCR1为低点电压比较值时所对应十倍电压Lm;0x210~0x221共12个地址空间存储喷头必要的配置数据;地址0x300~0x33c共60 B用于存储喷头的开波形数据;地址0x340~73c共60 B用于存储喷头的关波形数据。

3 基于系统的软件设计

整个软件的架构中分别对串行通信、24c16EEPROM存储、改进运算形式、主控状态机切换等进行设计与研究。最后借助PC上串口调试器或外扩128x64LCD显示人机交互来校正喷绘机的喷头。

3.1 通信界面的设计

pIYBAGBG73yAM3g2AAEFX7kyHWs511.png

通信界面是为用户简单、方便地更换墨水的T-V数据和校正喷绘机喷头而设置的显示工具。图2为串行通信的流程,从图中可以看出,主菜单在调试过程中,通过选项来进入温度校准、电压校准、容积电压Vrank输入或是配置数据的输入。借助于串口通信,在需要更新墨水的T—V数据时,无论用户是否熟练新产品的使用,都可直观操作把厂家提供的温压数据通过选择不同命令符写入24c16EEPROM。

3.2 基于24c16EEPROM存储设计

根据I2C的通信机制,首先主机发送一个起始条件,从机接收到后回发一个ACK响应信号。然后主机发送地址字节(地址字节为7位,最后一位为读写标志位),进行数据的读写传输。每次接收方回发一个ACK。最后主机发送停止信号结束通信。24c16EEPROM芯片手册,在发送地址7位中前四位必须是1010,此处DEVICE ADDRESS(设备地址)是通过(0xao|(读写地址))发送。通信时调用函数E2416_BufWr((u8*)&D0_confOn[0],ONWAVE_ADDR,NbrOfReg)来进行写操作设计,其中函数的参数(u8*)&D0_confOn[0]定义为首个无符号字节数据地址,ONWAVE_ADDR参数是指向写入到EEPROM的地址,参数NbrOfReg是写入数据的个数。

此处I2C通信模块的整体设计可通过程序图3进行描述,图中发送两个EEPROM地址,第一个EEPRON地址是EEPROM设备地址,从第二个EEPROM是存储数据首地址。2416EEPROM规定每一页为16 B,程序在设置过程中以E2416_PageWr()对页进行写操作,以E2416_ByteWr()对字节进行写操作,写入到EEPROM指定的地址,同样设置E2416_BufRe()、E2416_PageRe()进行页读操作以及E2416_ByteRe()进行字节读操作,从指定的地址中读数据。若需更改墨水的数据时借助串口交互的选择,把需要数据通过I2C通信机制直接写入到24c16数据存储EEPROM中,实际上写入到了预留的同一块ROM中。而且在喷头实际工作过程中可把确定的数据在上电初期通过函数E2416_BufRe()以及E2416_PageRe()来读取开关波形及喷头配置数据。

o4YBAGBG74aAH2mHAADyX3oKmoA512.png

3.3 改进运算形式

根据以上设计,喷头开始工作前,STM32主控制器从24c16EEPROM的外存储通过I2C通信机制读配置数据,其中包括存储高电压时PWM OCR1比较值Hm和存储低电压时PWM OCR1比较值Lm,程序中定义两个比较值,高低电压Hx、Lx是对应的实际高低电压的10倍。根据理论知PWM OCR1的值和对应STM32输出电压成正比。当PWM OCR1的值高时,STM32输出的电压高。所以得比例(Hm-Lm)/(Hx-Lx)=(m-Lm)/(x-Lx),其中m代表任意时刻PWM OCR1的比较值,x代表任意时刻当PWM OCR1的比较值为m时所对应输出电压的10倍,化简得m=(H_Lm*(x-Lx)+Lm*H_Lx)/H_Lx。读到一个温度,通过查表找到需要补偿电压,最后把补偿电压、修正电压、容积电压相加算出最后喷头需要的电压x,通过以上化简知m=(H_Lm*(x-Lx)+Lm*H_Lx)/H_Lx,计算出PWM OCR1中需要值m改变PWM。喷头工作的电压是12 V~29 V,精确到0.1 V,在设计过程中把实际高低电压Hx、Lx以及更改的输出电压扩大10倍。不难看出运算形式及结果没有改变,而存储上需占更多空间,但是不改则需要浮点型数的运算。相比较而言,提高10倍虽增加存储空间但较少计算时间,提高执行效率。

3.4 主控状态机切换设计

pIYBAGBG75WAM8S2AAGcMxMku74864.png

STM32主控程序设计是整个控制系统核心。为了优化系统设计,提高主控的处理速度,此处设计采用如图4主控状态切换机制。从图中可看出,系统上电开始后进入InitConfig状态初始化时钟、I/O口、串口、DMA、A/D、定时器、I2C、缓冲区等。若使能液晶屏,则液晶屏开始显示,然后通过DMA发送I2C从设备地址进入Send Slave Add状态。如果地址匹配,则进入Read Data状态,即从EEPROM中读取喷头的配置数据。若VERIFY_ON=1(PA^8=0),则按键按下进入UART adjust状态(文件的配置),若Sw1_on==1,即按键按下进入Nozzle text状态即喷头测试,否则进入ADC状态。转化完后通过DMA传送数据进入DMA IRQ状态,在此状态下进行16次平滑处理,计算完后进入Update Voltage状态然后输出PWM即电压提供给喷头,使喷头精确工作。初始工作读完数据后首次A/D转化由软件启动,工作后A/D转化是在DMA中断下进行,16次平滑处理后开启A/D转化使能。

4 系统测试

结合系统总体架构的软件和硬件平台以及过程方法步骤的阐述,最终测试结果如图5、6所示。图5显示了基于I2C通信机制EEPROM存储验证。为验证结果的正确,向24C16EEPROM写入数据0x0a、0x0b并用示波器观察波形图,其中通道2为SCL波形,通道1为SDA波形,结合两个通道信号和写入数据验证此系统存储设计可行。图6是借助串口收发机制来更新墨水T-V数据、喷头配置文件以及校验显示,从图可看出UART采用的是并口COM1、波特率为115 200 b/s,8 bit数据位和1 bit停止位,无奇偶校验收发机制下可正确显示主控的收发信息与程序设计一致。图6中主校菜单下通过串口向STM32发送“数字选项”来进入温度校准、12 V输出校准、29 V输出校准、容积电压Vrank输出等菜单。图中是在选择“9”下喷头的结合系统总体架构的软件和硬件平台以及过程方法步骤的阐述,最终测试结果如图5、6所示。图5显示了基于I2C通信机制EEPROM存储验证。为验证结果的正确,向24C16EEPROM写入数据0x0a、0x0b并用示波器观察波形图,其中通道2为SCL波形,通道1为SDA波形,结合两个通道信号和写入数据验证此系统存储设计可行。图6是借助串口收发机制来更新墨水T-V数据、喷头配置文件以及校验显示,从图可看出UART采用的是并口COM1、波特率为115 200 b/s,8 bit数据位和1 bit停止位,无奇偶校验收发机制下可正确显示主控的收发信息与程序设计一致。图6中主校菜单下通过串口向STM32发送“数字选项”来进入温度校准、12 V输出校准、29 V输出校准、容积电压Vrank输出等菜单。图中是在选择“9”下喷头的配置数据输入时的显示,包括喷头配置数据、开关波形数据以及没有显示全的温压曲线等数据。

5 总结

随着喷绘技术的发展,对喷头控制系统的要求越来越高。本设计基于简单、方便的考虑,以STM32作为主控制平台,以24c16EEPROM作为外部存储,结合软件设计出喷头控制系统。通过实践和理论研究证明,系统不仅简捷、方便,而且更改容易且执行过程中在一定程度上提高了系统的效率,达到了理想的预期效果,但此控制设计系统没能面向市场,还存在不少缺陷和不足,需以后加以弥补和改进。也希望将来此设计系统可以广泛应用于喷绘机喷头控制系统中。

编辑:hfy

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制系统
    +关注

    关注

    41

    文章

    6597

    浏览量

    110570
  • 喷绘技术
    +关注

    关注

    0

    文章

    2

    浏览量

    937
收藏 人收藏

    评论

    相关推荐

    STM32项目实战:基于STM32U5的智能灯光控制系统(LVGL),附项目教程/源码

    U5)今天小编来分享一个《智能灯光控制系统》的项目案例,硬件平台是STM32U5开发板+资源扩展板+显示触摸屏+仿真器,项目的演示界面如下图所示。智能灯光控制系统项目,需
    的头像 发表于 11-07 18:50 725次阅读
    <b class='flag-5'>STM32</b>项目实战:基于<b class='flag-5'>STM32</b>U5的智能灯光<b class='flag-5'>控制系统</b>(LVGL),附项目教程/源码

    STM32项目实战:基于STM32F4的智能灯光控制系统(LVGL),附项目教程/源码

    《智能灯光控制系统_STM32F4》项目完整文档、项目源码,私信小雯老师免费领取。STM32项目实战之“智能灯光控制系统”(基于STM32F
    的头像 发表于 10-17 16:16 734次阅读
    <b class='flag-5'>STM32</b>项目实战:基于<b class='flag-5'>STM32</b>F4的智能灯光<b class='flag-5'>控制系统</b>(LVGL),附项目教程/源码

    闸门控制系统有哪些结构来组成?

    闸门控制系统是一套集测量、控制、通信于一体的综合系统,旨在实现对闸门开启和关闭过程的自动化控制。其组成结构主要包括以下几个部分:一、主控计算
    的头像 发表于 09-29 11:20 234次阅读
    闸门<b class='flag-5'>控制系统</b>有哪些结构来组成?

    简述串级控制系统的工作原理及应用

    了广泛应用。 一、串级控制系统的工作原理 1.1 基本概念 串级控制系统是一种将主控制器和副控制器串联起来的控制策略。在这种
    的头像 发表于 08-22 17:53 3804次阅读

    伺服控制系统喷绘机中的应用

    伺服系统是自动控制系统的重要组成部分,它的性能优劣直接决定与影响着自动控制系统的快速性、稳定性和精确性,机、电、液的组合成为目前工业自动化的主要技术基础。伺服控制系统用来精确地跟随或复
    的头像 发表于 08-19 11:26 238次阅读
    伺服<b class='flag-5'>控制系统</b>在<b class='flag-5'>喷绘</b>机中的应用

    基于STM32单片机的粮仓温湿度控制系统设计

    系统内使用STM32单片机进行主控系统内可以检测粮仓的温湿度,另外通过EEPROM进行温湿度阈值的保存,当温度和湿度超过或者低于设定的阈值后就会进行相应的
    的头像 发表于 06-28 14:26 1435次阅读
    基于<b class='flag-5'>STM32</b>单片机的粮仓温湿度<b class='flag-5'>控制系统</b>设计

    基于STM32单片机的智能窗帘控制系统设计

    系统STM32单片机进行主控系统内使用血氧传感器进行血氧检测,通过电机控制采集血。按键控制
    的头像 发表于 06-28 14:24 2656次阅读
    基于<b class='flag-5'>STM32</b>单片机的智能窗帘<b class='flag-5'>控制系统</b>设计

    现场总线控制系统与集散控制系统的对比

    在工业自动化领域中,现场总线控制系统(FCS)和集散控制系统(DCS)是两个重要的控制系统架构。它们各自具有独特的特点和优势,并在不同的应用场景中发挥着关键作用。本文将对这两种控制系统
    的头像 发表于 06-27 14:11 1997次阅读

    前馈控制系统与反馈控制系统的区别

    在工业自动化领域中,控制系统是确保生产过程稳定、高效运行的关键。其中,前馈控制系统和反馈控制系统是两种常见的控制策略。它们各自具有独特的工作原理和优势,适用于不同的应用场景。本文将对前
    的头像 发表于 06-17 11:45 3791次阅读

    开环控制系统与闭环控制系统的区别

    控制系统中,开环控制系统和闭环控制系统是两种基本且重要的类型。它们在结构、工作原理、性能特点以及应用场景等方面存在显著的差异。本文将对这两种控制系统进行详细的比较和分析,以便读者能更
    的头像 发表于 06-13 15:00 9522次阅读

    PLC控制系统与继电器控制系统的比较

      在工业自动化和控制领域中,PLC(Programmable Logic Controller,可编程逻辑控制器)控制系统和继电器控制系统是两种常见的
    的头像 发表于 06-06 11:33 2807次阅读

    智能垃圾回收箱控制系统硬件设计

    智能高效远程控制智能垃圾桶回收箱控制系统硬件部分的选型与设计是整个产品的基础,所有功能的实现都要围绕其进行开发。本章对智能垃圾回收箱控制系统硬件
    的头像 发表于 04-13 08:10 831次阅读
    智能垃圾回收箱<b class='flag-5'>控制系统</b><b class='flag-5'>硬件</b>设计

    智能垃圾回收箱控制系统硬件设计-机智云

    3.3V 电源电路图 小结本文主要研究了智能垃圾回收箱控制系统硬件,采用STM32单片机作为主控制器,并选择了适用于硬件
    发表于 04-09 17:37

    plc控制系统的设计步骤有哪些

    和性能等。这些需求将成为设计的基础,为后续的步骤提供指导。 第二步:系统规划 系统规划是指根据需求和预算制定整体的控制系统规划。在这一步骤中,需要考虑以下方面: 系统结构:确定
    的头像 发表于 01-16 16:21 3318次阅读

    PLC控制系统的工程设计原则

    PLC控制系统的工程设计,一般可以分为系统规划、硬件设计、软件设计、系统调试、技术文件编制五个基本的步骤。
    发表于 12-29 09:36 614次阅读