论坛风格切换切换到宽版
发帖 回复
返回列表  提醒:不能用迅雷等P2P下载,否则下载失败标(二级)的板块,需二级才能下载,没二级不要购买,下载不了
  • 110阅读
  • 13回复

[移动软件开发]基于NXP i.MX RT1050主控板的恒温恒湿控制系统 [复制链接]

上一主题 下一主题
离线jupitars
 

性别:
帅哥
发帖
541
金币
665
提示:会员销售的附件,下载积分 = 版块积分 + 销售积分       只看楼主 倒序阅读 使用道具 0楼 发表于: 01-07
系统共分为四部分: 0Vf)Rw1%I  
信号采集,执行机构输出,显示器,主控板(i.MXRT1050评估板 9aTL22U?  
V-[2jC{  
主控板和其他模块采用modbus进行连接。共有2路串口,UART2连接PC,UART3连接信号采集和输出。 0(wf{5  
?ouV  
演示程序采用rttread操作系统,包含以下功能: t Y{; U#9  
1、modbus主机采集信号 g93I+  
2、modbus主机输出信号 j._G7z/LJ  
3、modbus从机连接PC显示 .j:i&j(  
4、温度湿度计算 Af`z/:0<  
5、温湿度输出控制 g<f P:/  
Gu2_dT  
/ >%L[RJ4  
待进一步完成,历史数据记录,导出以及图像输出。 ,,S9$@R  
dY1J<L}")  
输入信号包含设备温度、湿度 rqF"QU=l  
输出信号包括加热、加湿、制冷、除湿 YZ0en1ly  
L*P_vCC  
调节原理:高温或高湿度采用PID调节,低温或低湿度启动压缩机制冷、除湿。控制要求允许波动较大时,压缩机可采用切换工作制以节省能源并延长设备寿命,切换式调节由程序根据温湿度的波动情况调节开关压缩机的温湿度点。 zEy&4Kl{+  
!&W|myN^  
PC端显示使用昆仑通泰组态软件,采用modbus连接主控系统。 HC J;&C73&  
h9)RJSF4  
j5zFDh1(  
5)mVy?Z  
系统的关键是实现多通道modbus管理,包括主机和从机。从机相对简单,只需处理接收到的报文即可。主机相对复杂,要能够处理静态命令和突发命令,其中静态命令在机器空闲时一直轮询执行,比如获取温湿度值,发送输出值给执行模块等;突发命令只在需要执行时执行一次,比如开关机,复位从设备等。 k,T_e6(  
q&Q/?g>f  
主机使用缓冲池来存放用户请求的命令,Poll函数自动处理缓冲池中的命令 H- 185]7  
(s0 88O  
缓冲池结构如下 [6_"^jgH  
0mbSCBuffSizembCBuffSize jA,|JgN|n  
||| q?yMa9ZZky  
|Buff0|Buff1|Buff2|....|Buff[mbSCBuffSize-1]|Buff[mbSCBuffSize]|Buff[mbSCBuffSize+1]|....|Buff[mbCBuffSize]| KCD5*xH  
|||| L7m`HVCt&  
静态静态动态动态 lDC}HC  
缓冲缓冲缓冲缓冲 c -w0  
起始结束开始结束 }hCaNQ&jH  
!Vb,zQ  
扫描顺序: ^1.7Juvb  
先扫描动态区,从上次处理的位置开始,命中后退出。若扫描完整个动态区都没有命中,开始扫描静态区 y<|)'(  
扫描静态区,方法同动态区。 dsK/6yu  
两个区域的区别在于:动态区的命令处理后会被清除,而静态一直保持就绪状态。 AQe!Sqg'  
SBX|Bcyk*  
$~=2{  
]/_G-2.R  
{EL'd!v7e  
--------------状态机过程--------------------------- Q&gPa]z]}  
从机: '6X%=f'^b  
RX-IDLE&TX-IDLE->RX-RCV&TX-IDLE->RX-RCVEND&TX-IDLE->RX-IDLE&TX-SEND->RX-IDLE&TX-IDLE K@6`-|I  
Y#`Lcg+r,  
主机: YN^T$,*  
RX-IDLE&TX-IDLE->RX-RCV&TX-SEND->RX-RCV&TX-IDLE->RX-RCVEND&TX-IDLE->RX-IDLE&TX-IDLE n26>>N  
D M}s0O$ 0  
为尽量兼容其他设备,接收处理施加延时: o!utZmk$  
8)Zk24:])_  
对于含操作系统的应用,可以在数据发送函数添加任务延时即可。 s@s/ '^`  
T/5"}P`  
对于不含操作系统的应用-- lBmm(<~Z  
主机模式在接收结束后延时处理即可。 Pcdf$a"`  
从机接收到非本机地址直接处理,接收到本地地址延时处理。 UWw}!1  
]26mB  
配置两通道modbus,一路主机连接模块,一路从机连接上位机。 qOi5WX6F/  
  1. //作为主机连接下位模块
  2. mb02_Init(MB_RTU_MASTER,mb_baud_tab[MB_BAUD_38400],MB_PAR_NONE);
  3. mb.obj02.SlaveId=1;
  4. //作为从机连接PC
  5. mb03_Init(MB_RTU_MASTER,mb_baud_tab[MB_BAUD_38400],MB_PAR_NONE);
  6. mb.obj03.SlaveId=1;
&n|*uLn  
复制代码
E=k w)<X2  
t:=k)B  
//主机配置命令,独立os任务轮询。 `NSy"6{Z  
?q!FG(  
  1. //命令配置端口x读取采样数据
  2. mmb_stc_cmd_req(&mb.obj02,1,2,FUN_CODE_READ_REG,&RegHold[0],0,8,0);
  3. //命令配置端口x写输出数据至执行模块
  4. mmb_stc_cmd_req(&mb.obj02,2,3,FUN_CODE_READ_REG,(uint16_t*)&TempCtrPar,16,sizeof(TempCtrPar)/2,0);
  5. for(;;){
  6. rt_uint32_tenent;
  7. IF(mb.obj03.idle_TIme_cnt>6000)
  8. {
  9. mb03_Init(TEST_MODE,mb_baud_tab[MB_BAUD_38400],MB_PAR_NONE);
  10. mmb_stc_cmd_req(&mb.obj03,6,1,FUN_CODE_WRITE_MULTIPLE_COIL,&mb_tst.pv_r[14],0x20,16,dgus_callback);
  11. mmb_stc_cmd_req(&mb.obj03,7,1,FUN_CODE_READ_REG,&mb_tst.pv_w[16],0x22,16,dgus_callback);
  12. mb.obj03.SlaveId=1;
  13. }
  14. enent=osEventFlagsWait(os_obj.eid_mb,0,RT_EVENT_FLAG_OR,ms_TIcks(100),enent);
  15. mb_poll(&mb.obj00);
  16. mb_poll(&mb.obj02);
  17. mb_poll(&mb.obj03);
  18. mb_poll(&mb.obj04);
  19. }
Y\p $SN  
复制代码
h@@d{{IqT  
72,"Cj  
i.MXRT1050处理速度极快,测试modbus主机短报文指令执行速度可以达到40条/s。极大降低的数据采集及执行元件执行延时,可做系统低速IO扩展。
(Y2m md  


评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

一般

差劲
离线bidezhi7777

性别:
帅哥
发帖
7904
金币
131
提示:会员销售的附件,下载积分 = 版块积分 + 销售积分       只看该作者 1楼 发表于: 01-07
    


离线sun5304

性别:
帅哥
发帖
4915
金币
7376
提示:会员销售的附件,下载积分 = 版块积分 + 销售积分       只看该作者 2楼 发表于: 01-07
  


离线xinxinyuan

性别:
帅哥
发帖
12
金币
5
提示:会员销售的附件,下载积分 = 版块积分 + 销售积分       只看该作者 3楼 发表于: 01-07
学习一下看看


我思故我爱
离线feihangdan

性别:
帅哥
发帖
1084
金币
478
提示:会员销售的附件,下载积分 = 版块积分 + 销售积分       只看该作者 4楼 发表于: 01-07
看上去不错


离线耀

性别:
帅哥
发帖
673
金币
775
提示:会员销售的附件,下载积分 = 版块积分 + 销售积分       只看该作者 5楼 发表于: 01-07
看上去不错


离线luchonghui74

性别:
人妖
发帖
2436
金币
1900
提示:会员销售的附件,下载积分 = 版块积分 + 销售积分       只看该作者 6楼 发表于: 01-07
谢谢你的分享!


离线davis8051

性别:
帅哥
发帖
310
金币
424
提示:会员销售的附件,下载积分 = 版块积分 + 销售积分       只看该作者 7楼 发表于: 01-07
学习了,多谢分享。


离线rain-fine

性别:
帅哥
发帖
721
金币
531
提示:会员销售的附件,下载积分 = 版块积分 + 销售积分       只看该作者 8楼 发表于: 01-07
  


离线theory2

性别:
帅哥
发帖
4
金币
1
提示:会员销售的附件,下载积分 = 版块积分 + 销售积分       只看该作者 9楼 发表于: 01-07


离线huangweiqiao

性别:
帅哥
发帖
1344
金币
551
提示:会员销售的附件,下载积分 = 版块积分 + 销售积分       只看该作者 10楼 发表于: 01-08


离线梅兰里

性别:
帅哥
发帖
151
金币
148
提示:会员销售的附件,下载积分 = 版块积分 + 销售积分       只看该作者 11楼 发表于: 01-08


离线986720

性别:
人妖
发帖
115
金币
144
提示:会员销售的附件,下载积分 = 版块积分 + 销售积分       只看该作者 12楼 发表于: 01-08
G/(tgQ  


离线工程肖工

性别:
人妖
发帖
554
金币
948
提示:会员销售的附件,下载积分 = 版块积分 + 销售积分       只看该作者 13楼 发表于: 01-08


快速回复
限150 字节
 
上一个 下一个