流光自控集

个人工业自动化与嵌入式技术实践库
专注「数据流动态」与「自动化控制」的系统性记录,涵盖电子电路、PLC编程、Linux嵌入式开发及硬件调试全流程

最新实践记录

西门子S7-1200与Modbus从站通信调试实录

本次实践目标:通过S7-1200的串口模块(CM1241 RS485)与温湿度传感器(Modbus RTU协议)通信,读取实时数据。
关键问题:初始连接时频繁报错"8090"(超时),排查发现是从机地址配置冲突...

// TIA Portal中Modbus主站配置关键参数 "MB_Master" (EN := "启动", Mode := 1, ADDR := 3, // 从机地址 DB_NO := DB100, TIME := 1000, done => "完成", error => "错误码");

最终通过Wireshark抓包验证,修正从机地址为"3"后通信成功,数据刷新周期稳定在200ms...

嵌入式Linux下共享内存(Shm)与信号量结合使用

在ARM开发板(基于Ubuntu Core)中实现两个独立进程的高频数据交换(100Hz),传统Socket方案延迟过高(~15ms),改用共享内存+信号量优化...

// 创建共享内存示例代码 int shmid = shmget(IPC_PRIVATE, 1024, 0666 | IPC_CREAT); char *shmaddr = (char*)shmat(shmid, NULL, 0); // 初始化信号量 sem_t *sem = sem_open("/my_sem", O_CREAT, 0666, 1);

优化后延迟降低至2ms以内,满足实时性要求。附完整Makefile与调试脚本...

电子电路设计

PCB Layout经验(Altium Designer)、电源模块选型(LDO/DC-DC)、传感器接口电路(I2C/SPI)

自动化技术

PLC编程(西门子/三菱)、工业协议(Modbus/PROFINET)、SCADA系统搭建(Ignition)

Linux应用

嵌入式Linux开发(Yocto)、内核模块调试、Docker容器化(工业边缘计算)

硬件开发

STM32/树莓派驱动开发、低功耗设计(RTC唤醒)、硬件测试(示波器/逻辑分析仪)