搜索
返回列表 发新帖本帖赏金 10.00元(功能说明)我要提问

[技术讨论] 多点矩阵控制系统

[复制链接]
757|1
 楼主 | 2021-3-24 16:56 | 显示全部楼层 |阅读模式
本帖最后由 eyesee2008 于 2021-3-25 16:59 编辑

#申请原创#@小跑堂@小跑堂@21小跑堂
                              多点矩阵控制系统多点矩阵控制系统包括软件部分和硬件部分,下面主要介绍下硬件设计部分,其构架如图1所示。
1多点矩阵控制系统
多点矩阵控制系统原理主要是通过控制电机来达到相关的效果,在视觉上有冲击感,给人印象深刻。
该系统主要由硬件和软件两大部分组成,硬件部分包括主控器,中继器和驱动器,软件部分包括客户
端,协议,主控程序和驱动程序等。
2多点矩阵控制系统构架
其构架图如图1所示:
2351605afaab4ed7e.png
图1 多点矩阵控制系统架构
3硬件部分
3.1主控器
主控器的功能主要是接收客户端发送的指令,通过USB来进行通信,目前主控这部分
采用的是STM32F103CB,其主要参数指标如图2所示:
其工作电压是0~3.6V,最高工作频率可达72MHz,所对应的接口有USB2.0,3路UART,2路IIC,
2路SPI以及还有CAN,其Flash为128Kbytes,SRAM为20Kbytes。

在能耗方面具有三种工作模式:睡眠模式,待机模式和停止模式,其模式的设置可以详见手册。
13550605afaef6b343.png
4550605afafbdd726.png
图2  STM32F103CB 参数特点

其主控的MCU部分原理图如图3所示,其工作电压为是3.3V,工作温度范围:-40~85℃。在功耗方
面也很低,工作模式下电流约为50mA,待机模式下电流约为300uA。这里把需要能用的通信接口
都 预留出来,方便后期开发。
13694605afb305bd99.png
图3STM32F103CB
3.1.1串口转485
485的接口IC采用的SN75176A,性能方面优于MAX485,具体表现如表1所示:
表1 SN75176A与MAX485对比
  
SN75176A
  
MAX485
工作
  
电压
工作
  
温度
接收使能到高
接收使能到低
工作
  
电压
工作
  
温度
接收使能到高
接收使能到低
0~7V
0~70℃
10ns
12ns
0~12V
0~70℃
20ns
20ns
SN75176A内部逻辑见图4
69567605afb6241e9b.png
图4SN75176A内部逻辑图
MAX485内部逻辑见图5
71818605afb778c876.png
图5MAX485内部逻辑图
由图4和图5可见,内部逻辑大体类似。
UART转485电路如图6所示:接口做了防静电处理,静电等级空气8kV,接触6kV,对应的自恢复保
险丝能够起到良好的保护作用。
96910605afb922a200.png
图5UART转RS485
3.1.2TF
考虑到后期会用到脱机工作的需求,所以可以将程序保存在TF卡里,MCU通过SPI的通信方式将命令
读取来执行相关的动作。TF卡如图6所示
21101605afbb253781.png
     图6TF卡引脚说明

    其电路如图7所示,工作电压是3.3V
45266605afbdc5ee52.png
图7TF卡SPI通信方式
3.1.3BOOT选择启动方式
BOOT的启动方式有用户闪存,ISP下载以及内部的RAM,通过BOOT0置零和置1来
选择对应的启动方式,具体见图8所示:
26131605afbf66e0e2.png
8 BOOT启动方式的选择
3.1.4MicroUSB接口

通过该接口可以和上位机进行通信,收发命令。接口防静电采用了TPD2E001DZDR通过它可以有效的
抑制静电干扰,保护了后级主控MCU。电路如图9所示:
79619605afc100a8dc.png
图9Micro USB接口
99297605afc21e66fd.png
3.1.5DC TO DC
该主控器是采用了外部适配器供电,适配器规格为AC220V TO DC24V2.5A,该

MCU的工作电压为3.3VSN75176A的工作电压为5.0V,所以先将24V通过AP1509稳压出5V,然后见5V通过
LDO稳压出3.3V,具体如图10所示:
3359605afc35c8730.png
10 DC TO DC
3.1.6下载接口
该MCU具有两种下载接口模式,分别为JTAG和SWD,为了操作简便,使用起

来更加便利,因而采用了SWD的方式,SWD下载线的定义为:VCCSWDIOSWCLKGND。具体如图11所示:
61137605afc48cad5e.png
11 SWD下载接口
3.1.7复位电路
该复位电路是在关键时刻能起到复位作用,通过按下按键,复位口检测到低电平,然

后触发MCU进行复位操作,电路具体如图12所示:
80962605afc629c8af.png
12复位电路
3.1.8指示灯
该指示灯可以通过程序来控制灯的亮灭,从而知道程序是否有响应等等,其状态可以

自由定义,很便捷。具体如图13所示:
99064605afc78e6c26.png
13指示灯
3.2中继器
中继器的功能主要是将一路485分成8路485输出,保证其每一路的输出能力,能够

将承载的设备最大化。
58264605afc8fa60ea.png 22506605afc96679a2.png
98704605afc9e8435f.png
14  一路分多路输出
在输入口通过SN75176A识别485接口,然后转换成串口来发送信号,其供电方式是采用了AP1509,其最大输出电
流可达2A,完全满足要求,具体如图15所示:
13934605afcba18557.png
15 分路供电

    在接收到分路信号后,需要通过光耦进行隔离处理,然后在通过SN75176A转换出485电器接口,总共有8路输出,
单路两路如图16所示:
54041605afccd1a139.png
16 两路485接口

    为了保证每两路都有足够的工作电流,而不浪费资源,采用AP1509能够足够的提供每两路的工作电流,具体电路
如图17所示:
18784605afce283b85.png
17  每两路供电部分
3.3驱动器
驱动器的功能主要是驱动步进电机的正转,反转,转动角度,速度调节等。
3.3.1 主控MCU

    MCU采用的和主控器上的是一样的,方便后期物料管理方便,详细参数就不一一罗列,具体可见图18所示:
40407605afd0e9b0cb.png
18 驱动器主MCU STM32F103CB
3.3.2 驱动电路
该步进电机驱动采用的是TI 的DRV8825,其工作电压范围:8.2V~45V,最大可达2.5A。

的驱动能力,在步进电机驱动控制方面应用比较广,可以达到32细分。电路图如图19所示
82798605afd2cbe1eb.png
19  步进电机驱动
细分模式选择如图20所示:
36827605afd47085bf.png
20 细分模式选择
3.3.4 RS485UART

RS485通过SN75176A转换成UART,把数据发给MCU来做处理。如图21所示:
44948605afd5b090b9.png
图21 RS485转UART
3.3.5 DC TO DC

    该驱动器采用独立的适配器供电,电源是AC220V~DV24V2.5A,稳压方式和主控器是一样,具体如图22所示:
1961605afd70a2954.png
22 DC TO DC电路
3.3.6 BOOT启动方式选择

    BOOT通过选择01来切换启动方式,具体如图23所示:
86498605afd839c742.png
23 BOOT启动方式选择
4软件部分
4.1客户端
客户端只要是将图片的灰阶度转换成对应的ID和数据,然后通过USB接口传送到主控器,经过主控器识别解码
后,再生成DMX512的数据格式来通讯。在客户端的图片采集其每个对应的ID的图片值,也就是灰度值,通过
灰度值来确定电机要转的圈数。举例如图24所示:
77886605afdb85098c.png
图24 举例图

灰度色值表如图25所示:
13354605afdd0d7e09.png
图25 灰度色值
4.2协议
DMX 是Digital MultipleX 的缩写,意为多路数字传输(具有512条信息的数字多路复用”)。DMX512控制协议是美国舞台灯光
协会(usITT)于1990年发布的灯光控制器与灯具设备进行数据传输的工业标准,全称是USITTDMX512(1990);
DMX512 在其物理层采用EIA-485差分信号,结合可变尺寸,基于分组的通信协议。它是单向的。DMX512不包
含自动错误检查和纠正功能,因此不适用于危险应用,如烟火或舞台装置的移动。电磁干扰,静电放电,不正确
的电缆端接,电缆过长或电缆质量都可能造成虚假触发,但是在连接控制器(如照明控制台)与调光器和特效设备
等都有广泛应用。
4.2.1 DMX512指令帧介绍

每一个DMX 控制字节叫做一个指令帧,称作一个控制通道,可以控制灯光设备的一个或几个功能。一个DMX 指令帧由1个开
始位(S)、8个数据位(D0-D8)和2个结束位(E)共11位构成,采用单向异步串行传输,如图26所示。
11023605afdfbb9eb0.png
图26 DMX512 定时程序的帧结构(上图)和信息包结构(下图)
图26 中虚线内控制指令中的S 为开始位,宽度为一个比特,是受控灯具准备接收并解码控制数据的开始标志;
E为结束位,宽度为两个比特,表示一个指令帧的结束;
D0~ D7为8 位控制数据,其电平组合从00000000一11111111 共有256个状态(对应十进制数的0~255),控制灯光的亮度时,
可产生256个亮度等级,0000~ (0)对应灯光最暗,11111111(255)对应灯光最亮。
DMX512指令的位宽(每比特宽度)是4 us,每一个指令帧11位,故指令帧宽度为44 us,传输速率为1/44us = 250kbps。
4.2.2  DMX512信息包

一个完整的DMX512信息包(Packet)由一个MTBP位、一个Break 位、一个MAB位、一个SC 和512个数据帧构成,如图27所示:
256605afe228389c.png
图27 数据帧
MTBP(MarkTimeBetween Packets)标志着一个完整的信息包发送完毕,是下一个信息包即将开始的“空闲位”,高电平有效。
Break为中断位,对应一个信息包结束后的程序复位阶段,宽度不少于两个帧(22 比特)。程序复位结束后应发送控制数据,
MAB位,由于每一个数据帧的第一位(即开始位)为低电平,所以必须用一个高电平脉冲间隔前后两个低电平脉冲,这个起间隔、
分离作用的高电平脉冲即MAB(MarkAfter Break),此脉冲一到,意味着“新一轮”的控制又开始了。
SC(StartCode)意为开始代码帧(图1中的第0帧),和此后到来的数据

帧一样,也是由11 位构成,除最后的两个高电平的结束位之外,其他9位全部是低电平,通常将其叫做第0 帧或第0通道(Channel No 0),
可理解为一个不存在的通道(NonexistentChanne1)。
表2 DMX512 信息包定时表
79999605afe4cb8067.png
表2 是DMX512 信息包的定时表,表中NS意为自己设定,宽度没有严格限制,由程序设计者自行决定,比如MTBP的宽度可以介于
0~1秒之间,其他建议采用典型值。
控制台每发送一个信息包,可以对全部512个受控通道形成一次全面的控制。发送一个信息包的时间大约是23 ms,每秒钟将对所有
512个受控通道完成44 次控制,即受控光路的刷新频率44 Hz,如果实际受控通道少于512个,那么刷新频率将相应提高。
5 软件流程图

软件流程如图28所示:
87866605afe6c8363c.png
以上所说的硬件主要包括主控器,中继器和驱动器,主控器主要是起到主机的作用,中继器主要起到中继的作用,驱动器主要起到驱动电机的作用。






使用特权

评论回复

打赏榜单

21小跑堂 打赏了 10.00 元 2021-03-25
理由:恭喜通过原创文章审核!请多多加油哦!

相关帖子

| 2021-4-19 15:16 | 显示全部楼层
本帖最后由 515192147 于 2021-4-19 15:21 编辑

您好,有个问题,为啥不用 CAN总线通信,485通信的延迟会影响您的视觉效果的,公司新推出GDF103C8T6开发的CAN总线步进电机控制器,
98个步进电机共用一根CAN总线,可Web页面调试步进电机,
可通过RS485或以太网modbus协议与PLC或计算机高速通信!!
程序含编码器、高精度位置、转速控制、步进电机丢步及
死区补偿功能,高性价比,成本30元左右。

STM23.JPG
stm302.jpg

使用特权

评论回复
扫描二维码,随时随地手机跟帖
返回列表 发新帖 本帖赏金 10.00元(功能说明)我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 我要提问 投诉建议 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

在线客服 快速回复 返回顶部 返回列表