🏠 回到主页

西门子杯-工业硬件研发

2024 年CIMC“西门子杯”中国智能制造挑战赛

智能制造创新研发类赛项:工业硬件研发方向(筹)

设计方案模板


参赛队伍编号:xxxxxxxx

撰写日期:2024年 6 月 30 日

西门子杯中国智能挑战赛,是在2024年首次增加了硬件研发赛项。2024年该赛项的要求是制作一款能够与PLC进行通信,实现数字量输出功能的PLC工控板。在下文需求分析和整体系统设计中给出了今年的原题要求。

本文是按照官方给出的设计方案模版要求所改写的。

对于没有接触过PLC工作的小白来说,理解题目要求和编写RS485通信协议其实是存在不小的难度的,并且比赛时间正好与大部分学校的期末考试时间冲突。从最后比赛公布的全国队伍的得分表来看,实现核心功能的队伍是非常非常少的。实际上完成基础设计和基础的软件设计基本就可以拿到一个不错的名次。

本文是对自己参赛的一个记录。本仓库分享了硬件设计文件(嘉立创EDA专业版文件),可作参考。

仓库地址:西门子杯工业硬件PLC拓展板


以下模板为了便于方案评审使用,参赛队伍可在此基础上,根据情况自行增加条目和内容。请注意排版条理清晰、便于审阅。

1、需求分析

整体需求理解

基于给定的XX芯片,设计和制作核心板与扩展板,以实现一款基于Modbus RTU协议的工业分布式IO系统。该系统的主要目标是提供一个可靠、高效且易于扩展的工业自动化解决方案,用于实时数据采集和控制。

主要需求点:

  1. 核心板设计:使用单片机芯片作为主控单元,负责处理数据、通信和系统管理。

  2. 扩展板设计:提供多个IO接口,用于连接各种传感器和执行器。

  3. Modbus RTU协议支持:确保系统能够通过Modbus RTU协议与上位机或其他设备进行通信。

  4. 分布式架构:支持多个IO模块的分布式部署,以适应不同的工业环境。

  5. 工业级可靠性:满足工业环境下的高可靠性和稳定性要求。

  6. 易于扩展和维护:系统设计应便于后续的扩展和维护。

可行性分析

技术可行性

  1. 芯片性能:单片机芯片是否具备足够的处理能力和资源(如内存、存储)来支持Modbus RTU协议的处理和IO数据的实时采集。

  2. 硬件设计:核心板和扩展板的设计是否能够满足工业级的物理和电气要求,如抗干扰、耐高温等。

  3. 软件支持:是否存在成熟的Modbus RTU协议栈,以及是否能够适配XX芯片。

  4. 通信接口:单片机芯片是否具备足够的通信接口(如UART、RS-485)来支持Modbus RTU通信。

经济可行性

  1. 成本分析:单片机芯片的成本是否在可接受范围内,以及核心板和扩展板的制造成本是否合理。

  2. 市场分析:目标市场的需求是否足够大,以及是否有竞争优势。

操作可行性

  1. 用户界面:是否需要开发易于操作的用户界面,以便用户进行配置和管理。

  2. 维护和升级:系统是否便于维护和升级,如固件更新、故障排查等。

法律和环境可行性

  1. 合规性:系统是否符合相关的工业标准和法规要求。

  2. 环境影响:产品的生产和使用是否对环境造成负面影响。

在进行了上述需求理解和可行性分析后,可以得出以下初步结论:

最终的可行性结论需要在详细设计和市场调研后进一步确认。

2、整体系统设计

根据赛题要求将产品设计分为核心板和功能拓展板(接口板和数字量板)。整体系统设计从硬件软件和结构

  1. 核心板需要引出芯片所有可用 GPIO 引脚给扩展板,核心板只负责软件功能,不负责 硬件扩展功能的实现。

  2. 扩展板分为 3 种:

    1. 接口板: i. 外部 24vDC 供电,供电范围:18-36vDC。ii. 对核心板供电 5vDC。 iii. 实现 RS-485 电气接口,通过接口板,核心板可以与 ModbusRTU 主站通信。 iv. 通过连接器实现与扩展板的通信。该通信方式的电气特性与软件协议可自定 义,需确保其他扩展板能及时与 PLC 通信(延迟不超过 ModbusRTU 总线周 期与 PLC 运行周期的最小值的 50%)。

    2. 数字量板: i. 外部 24vDC 供电,供电范围:18-36vDC。 ii. 对核心板供电 5vDC。 iii. 通过连接器实现与接口板和其他扩展板的通信。该通信方式的电气特性与软 件协议可自定义。 iv. 根据通过 iii 的扩展接口接收到的 PLC 输出指令,输出数字量信号。 v. 将输入的数字量信号通过 iii 的扩展接口传输给 PLC。 vi. 实现 8 位晶体管数字量输入与 8 位晶体管数字量输出,输入脉冲频率不低于 1Khz,输出脉冲频率不低于 5Khz,输入输出脉冲误差不超过 0.3%。 vii. 输入输出都具备 LED 提示。 viii. 数字量输出要求电气隔离,隔离度不低于 1000vDC。

    3. ModbusRTU 接口需要实现下述功能:

      01-06,08,11,15,16 号命令字。

      接收报文与发送报文的间隔时间固定且 PLC 可配置。

      通信参数 PLC 可配置,最高波特率不低于 115200bps。

    4. 加分项:所有对外接口的 ESD 防护:

      a) 所有暴露金属接口(包括跟与电源、PLC、各个扩展板相互互联)能耐受±8Kv 空气放电与±2Kv 接触放电的静电测试。

      b) 静电测试标准参照 EN 61000-4-2 进行: 断电情况进行静电测试,测试完成以后设 备上电,能正常工作为通过。

硬件设计

  1. 核心板

    • 主控芯片:选择合适的芯片作为主控单元,确保其具备足够的处理能力、内存和存储资源。

    • 电源管理:设计高效的电源管理模块,以适应工业环境的电源波动。

    • 通信接口:集成必要的通信接口,如RS-485用于Modbus RTU通信,以及可能的以太网接口。

    • 扩展接口:提供标准扩展接口,如SPI、I2C等,以便连接扩展板。

  2. 数字量板扩展板

    • IO接口:设计多种IO接口,包括数字输入/输出、模拟输入/输出,以适应不同的传感器和执行器,通过设计专用的接口以连接单片机核心板。

    • 隔离保护:在关键IO接口上加入隔离保护,以提高系统的抗干扰能力。

    • 电源接口:提供独立的电源接口,包含独立的DC-DC电路,以便为连接的设备供电。

  3. 接口板扩展板

    • 拓展接口:设计RS485等串行接口。

    • 连接接口:设计独立的接口以与单片机核心板匹配。

    • 电源接口:提供独立的电源接口,包含独立的DC-DC电路,以便为连接的设备供电。

软件设计

  1. 操作系统:可以选择适合单片机芯片的实时操作系统(RTOS),以确保系统的实时性和稳定性。在本产品中,我们采用裸机开发的形式。

  2. Modbus RTU协议栈:集成或开发Modbus RTU协议栈,确保与上位机或其他设备的可靠通信。

  3. 应用软件:开发应用软件,实现数据采集、处理、存储和控制逻辑。

  4. 用户界面:开发易于操作的用户界面,支持配置、监控和故障排查。

结构设计

  1. 机械设计:设计坚固耐用的外壳,以适应工业环境的物理冲击和振动。

  2. 散热设计:合理设计散热结构,确保系统在高温环境下稳定运行。

  3. 安装方式:提供多种安装方式,如 DIN 导轨安装,以适应不同的安装环境。

测试验证

  1. 功能测试:对系统的各项功能进行全面测试,确保符合设计要求。

  2. 性能测试:测试系统的实时性能、通信性能和稳定性。

  3. 环境测试:进行高低温、湿度、振动等环境测试,确保系统的工业级可靠性。

  4. 认证测试:进行必要的认证测试,如CE、UL等,确保产品符合相关标准和法规。

成本与可生产性

  1. 成本控制:在设计和选型过程中,考虑成本因素,选择性价比高的组件和材料。

  2. 生产工艺:选择适合的生产工艺,确保产品的可生产性和质量一致性。

  3. 供应链管理:建立稳定的供应链,确保原材料的供应和成本控制。

非功能要求

  1. 安全性:确保系统设计符合工业安全标准,特别是在高压、高电流环境下的安全操作。

  2. 可维护性:设计便于维护的系统,如模块化设计、远程固件更新等。

  3. 可扩展性:确保系统设计具有良好的可扩展性,便于未来功能的增加和升级。

通过上述系统设计与选型,可以实现一款满足功能、性能要求的基于Modbus RTU的工业分布式IO系统,同时兼顾成本、可生产性、非功能等要求。设计过程中需要硬件、软件、结构、测试验证等多个团队的紧密合作,确保系统的整体性能和质量。

3、软硬件详细设计

软件设计:

主控芯片方面选择了意法半导体的STM32F103RCT6芯片,此处列出项目设计所用的芯片外设资源引脚列表。软件设计根据此表进行。

image-20240629192209967

RS485通信软件设计:

串口初始化
发送数据
接收数据
中断处理
  1. USART初始化MX_USART1_UART_Init函数初始化USART1接口,设置波特率为9600。

  2. RS485收发控制RS485_TransmitRS485_Receive函数分别用于发送和接收数据,并通过PB1引脚控制RS485的收发模式。

  3. 主循环:在主循环中,通过RS485_Receive函数接收数据,并进行处理。

模拟输入采集程序设计:

  1. I2C初始化MX_I2C1_Init函数初始化I2C1接口,设置时钟速度为100kHz。

  2. ADS1115配置ADS1115_Config函数通过I2C发送配置数据到ADS1115的配置寄存器。

  3. 读取ADC数据ADS1115_ReadADC函数通过I2C读取ADS1115的转换结果寄存器,并返回16位ADC值。

     

数字量输出软件设计:

数字量输出有8路通道,数字量输出在电路设计上做了隔离处理,当某个数字通道需要输出高电平(5V)时,在程序里将对应通道多对应的芯片引脚电平拉低即可。根据电路设计,对应通道的指示灯将会亮起。

硬件连接
代码说明
  1. GPIO初始化MX_GPIO_Init函数初始化所有指定的GPIO引脚,设置为推挽输出模式。

  2. 设置数字输出SetDigitalOutput函数根据通道号和状态设置相应的GPIO引脚状态。

  3. 主循环:在主循环中,示例代码将所有通道设置为高电平。

数字量输入读取软件设计:

硬件连接
代码说明
  1. GPIO初始化MX_GPIO_Init函数初始化所有指定的GPIO引脚,设置为输入模式。

  2. 读取数字输入ReadDigitalInput函数根据通道号读取相应的GPIO引脚状态。

  3. 主循环:在主循环中,示例代码读取所有输入通道的状态并打印。

硬件设计:

  1. 核心板设计

    主控单片机选择STM32F104RCT6芯片。STM32F103RCT6,基于ARM Cortex-M3内核,具有丰富的外设接口。

    image-20240629192820897

    核心板能够使STM32芯片处于正常工作状态。

    核心板根据芯片手册进行了芯片唤醒、复位电路的设计,并引出BOOT0接口(芯片启动模式)选择。

    外部8MHz晶振作为主时钟源,32.768kHz晶振作为RTC(实时时钟)时钟源。

    核心板支持5V供电,并采用了常用的TYPE-C USB接口,板载AMS1117 LDO线性稳压器,输入端和输出端添加电容滤波,提高电源稳定性。

    接口方面,单独引出了SWD接口,标准2线串行调试接口(SWDIO和SWCLK),用于程序下载和调试。

    指示灯方面,设置了3V3芯片电源供电指示灯和程序控制灯(连接单片机PC13引脚),便于检查核心板工作状态。image-20240629195712887

  2. 接口板设计

    接口板原理图如下

    image-20240629194131664

    接口板在设计上引出了RS485接口,预留核心板插槽与核心板进行连接。 1) RS485通信接口设计: SP485芯片:选择SP485作为RS485收发器,它支持半双工通信,具有良好的抗干扰能力。 RS485接口:使用SP485的RO(接收输出)和DI(驱动输入)引脚连接到STM32的串口接收(RX)和发送(TX)引脚。 DE/RE控制:SP485的DE(驱动使能)和RE(接收使能)引脚连接到STM32的GPIO引脚,用于控制发送和接收模式。

    2)电源电路设计:

    接口板设计了两种电源输入接口,一种是通过USB TYPE-C接口进行供电。

    另一种基于实际应用场景出发,采用了DC-DC降压电路。在DCDC芯片中,我们选择了德州仪器的TPS5450芯片。TPS5450是一款高效率的降压(Buck)转换器,适用于将较高的输入电压转换为较低的输出电压。根据合适的反馈网络设计,使得输出电压稳定在5V。

    DCDC电源电路在设计上运用了稳压二极管,工作电源指示灯等。

    核心板支持接收6-36V的电压输入。

    image-20240629195633414

  3. 数字量板设计

    数字量板原理图设计如下:

    image-20240629195839079

    image-20240629195917318

    image-20240629200000090

    1)电源电路设计: 数字量板板设计了两种电源输入接口,一种是通过USB TYPE-C接口进行供电。

    另一种基于实际应用场景出发,采用了DC-DC降压电路。在DCDC芯片中,我们选择了德州仪器的TPS5450芯片。TPS5450是一款高效率的降压(Buck)转换器,适用于将较高的输入电压转换为较低的输出电压。根据合适的反馈网络设计,使得输出电压稳定在5V。

    DCDC电源电路在设计上运用了稳压二极管,工作电源指示灯等。 数字量板板载AMS1117芯片,设计了线性稳压器电路,对TPS5450前端电路输出的5V电路进行降压,输出3.3V电压给一些元件进行供电。 2)模拟输入设计:

    模拟输入电路输入通过集成运放芯片(LM358DR),采用电压跟随器电路进行隔离,后端输出连接ADS1115模数转换芯片。ADS1115 是一款低功耗、高精度的16位模数转换器(ADC),由德州仪器(Texas Instruments)生产。它采用I2C接口,适用于多种传感器信号的数字化处理,如温度、压力、电压等。ADS1115 具有内部可编程增益放大器(PGA),可调整输入范围,适用于多种应用场景。

    ADS1115芯片通过IIC与STM32单片机连接。

    3)数字量输出电路设计:

    数字量板有8路数字量输出,在电路设计上采用了EL3H4进口光耦芯片和ULN2003A芯片进行电气隔离。ULN2003 是一种高电压、大电流的达林顿晶体管阵列(Darlington transistor array),通常用于驱动继电器、灯泡、步进电机等高电流负载。它包含7个达林顿对,每个达林顿对可以提供高达500mA的电流,并且可以承受高达50V的电压。每路数字量输入都配备有单独的电平指示LED来指示继电器的导通状态。

    4)数字量输入电路设计:

    数字量板有8路数字量输入,在电路设计上采用了EL3H4进口光耦芯片进行电气隔离,防止输入端电压变化影响到系统正常工作,每路数字量输入都配备有单独的电平指示LED。

    5)与接口板类似,数字量板在设计上同样引出了RS485接口,同样预留了核心板插槽与核心板进行连接。 RS485通信接口设计: SP485芯片:选择SP485作为RS485收发器,它支持半双工通信,具有良好的抗干扰能力。 RS485接口:使用SP485的RO(接收输出)和DI(驱动输入)引脚连接到STM32的串口接收(RX)和发送(TX)引脚。 DE/RE控制:SP485的DE(驱动使能)和RE(接收使能)引脚连接到STM32的GPIO引脚,用于控制发送和接收模式。

    image-20240630170902548

4、产品分析测试

功能测试

  1. Modbus RTU通信测试:验证系统是否能够正确解析和生成Modbus RTU协议数据,与上位机或其他设备进行有效通信。

  2. IO接口测试:对所有IO接口进行测试,确保数字输入/输出、模拟输入/输出等功能正常工作。

  3. 控制逻辑测试:验证系统的控制逻辑是否按照设计要求执行,包括定时、计数、报警等功能。

  4. 用户界面测试:测试用户界面的易用性和功能完整性,确保用户可以方便地进行配置和管理。

性能测试

  1. 实时性能测试:测试系统的数据采集和处理速度,确保满足实时性要求。

  2. 通信性能测试:测试系统的通信速率和稳定性,包括在不同网络负载下的表现。

  3. 负载能力测试:测试系统在连接多个扩展板和IO设备时的性能表现。

非功能测试

  1. 可靠性测试:进行长时间运行测试,验证系统在持续工作下的稳定性和可靠性。

  2. 环境适应性测试:在高低温、湿度、振动等极端环境下测试系统的性能。

  3. 电磁兼容性(EMC)测试:测试系统在电磁干扰环境下的抗干扰能力。

可生产性测试

  1. 装配测试:验证产品的装配流程是否顺畅,是否存在装配难点。

  2. 焊接质量测试:使用X射线或AOI(自动光学检测)等方法检测焊接质量。

  3. 老化测试:对产品进行老化测试,确保在长时间使用后仍能保持性能。

成本验证

  1. BOM成本分析:详细分析产品的物料清单(BOM)成本,确保成本控制在预算范围内。

  2. 生产成本分析:评估生产过程中的直接和间接成本,包括人工、设备折旧、能源消耗等。

  3. 市场成本对比:与市场上类似产品进行成本对比,确保产品的成本竞争力。

设计验证

功能验证

性能验证

非功能验证

可生产性验证

成本验证

通过上述测试方案和设计验证,可以确保产品在功能、性能、非功能、可生产性和成本等方面满足设计要求,达到预期的市场竞争力。

附录

成本核算表

最终成本= 375 元(请按照一下表格,汇总后,填写)

根据实际采购金额,BOM表成本约为227元左右,PCB制板工程费为137.6元,装配成本10元。

序号物料类型物料参数物料型号数量备注采购链接/供应商合同与付款凭证单价小计
1电容10uF 2    
2电容100nF 4    
3电容4.7uFCL10A106KP8NNNC1    
4电容12pF 2    
5电容20pF 2    
6电容100nFCL10B104KB8NNNC6    
7芯片0466.500NR0466.500NR1    
8排针2.54-1*4P母2.54-1*4P母2    
9排针2.54-1*2P 1    
10排针PZ254-2-13-Z-8.5PZ254-2-13-Z-8.52    
11排针2.54-1*2P母2.54-1*2P母1    
12LEDLED_0603-G 2    
13电阻4.7K 2    
14电阻0 1    
15电阻10k0603WAF1002T5E1    
16电阻10kΩ0603WAF1002T5E1    
17电阻1M0603WAF1002T5E1    
18电阻10K 1    
19按键Key_SMD_3x4x2 2    
20LDO芯片AMS1117-3.3AMS1117-3.31    
21芯片STM32F103RCT6STM32F103RCT61    
22存储芯片W25Q128 1    
23连接器KH-TYPE-C-2PKH-TYPE-C-2P1    
24晶振32.768kHz 1    
25晶振8MHzX503220MSB2GI1    
26电容10nFCC0603KRX7R9BB1031    
27电容10uFGMK325BJ106KN-T6    
28电容100nFTCC0603X7R104K500CT1    
29电容1.5nFCC0603KRX7R9BB1522    
30电容100pFCC0603JRNPO9BN1011    
31电容100nFCL10B104KB8NNNC1    
32电容100pFCL10C101JB8NNNC2    
33稳压器件MCC SK1045MCC SK10451    
34稳压器件SK1045BSK1045B1    
35稳压器件SM712SM7121    
36保险丝JK-SMD0603-005JK-SMD0603-0052    
37排针B-2100S04P-A110B-2100S04P-A1102    
38排针B-2100S08P-B110B-2100S08P-B1101    
39排针PZ254-2-13-Z-8.5PZ254-2-13-Z-8.54    
40排针2.54-1*2P母2.54-1*2P母1    
41电感15uHAPS10A40M1501    
42连接器ACT45B-510-2P-TL003ACT45B-510-2P-TL0031    
43连接器XL-1608SURC-06XL-1608SURC-061    
44连接器WJ2EDGR-5.08-2P 1    
45电阻20kΩFRC0603F2002TS1    
46电阻11.8K0603WAF1182T5E1    
47电阻6.34kΩRS-03K6341FT1    
48电阻3.09kΩRMC06033.09K1%N1    
49电阻2.26kΩCR0603-FX-2261ELF1    
50电阻5.1kΩCR0603JA0512G1    
51电阻10kΩ0603WAF1002T5E2    
52电阻120Ω0603WAF1200T5E1    
53电阻TPS5450DDARTPS5450DDAR1    
54电阻SP485EEN-L/TRSP485EEN-L/TR1    
55USB连接器KH-TYPE-C-2PKH-TYPE-C-2P1    
56电容10nFCC0603KRX7R9BB1031    
57电容10uFGMK325BJ106KN-T6    
58电容100nFTCC0603X7R104K500CT1    
59电容1.5nFCC0603KRX7R9BB1522    
60电容100pFCC0603JRNPO9BN1011    
61电容100nFCL10B104KB8NNNC10    
62电容100pFCL10C101JB8NNNC2    
63电容1uFCL10A105KB8NNNC5    
64电容10uF 2    
65电容100nF 2    
66连接器WJ15EDGVC-3.81-3PWJ15EDGVC-3.81-3P1    
67连接器WJ15EDGVC-3.81-9PWJ15EDGVC-3.81-9P1    
68连接器MCC SK1045MCC SK10451    
69稳压器件SK1045BSK1045B1    
70稳压器件SM712SM7121    
71稳压器件M7M72    
72芯片0466.500NR0466.500NR1    
73稳压器件BSMD0805-035-24VBSMD0805-035-24V2    
74保险丝JK-SMD0603-005JK-SMD0603-0052    
75排针PZ254-2-13-Z-8.5PZ254-2-13-Z-8.52    
76排针HDR-M_2.54_1x4P 3    
77连接器B-2100S02P-A110B-2100S02P-A1101    
78连接器HDR-F_2.54_2x6 1    
79连接器2.54-1*2P母2.54-1*2P母3    
80连接器B-2100S04P-A110B-2100S04P-A1101    
81连接器B-2100S08P-B110B-2100S08P-B1101    
82继电器G5NB-1A-E DC5G5NB-1A-E DC58    
83电感15uHAPS10A40M1501    
84芯片ACT45B-510-2P-TL003ACT45B-510-2P-TL0031    
85芯片XL-1608SURC-06XL-1608SURC-061    
86LEDNCD0603R1NCD0603R12    
87芯片W5500W55001    
88连接器WJ15EDGVC-3.81-6PWJ15EDGVC-3.81-6P1    
89连接器WJ2EDGR-5.08-2P 10    
90MOS管IRFZ44NPBFIRFZ44NPBF2    
91电阻4.7kΩ0603WAF4701T5E34    
92电阻11.8K0603WAF1182T5E1    
93电阻6.34kΩRS-03K6341FT1    
94电阻3.09kΩRMC06033.09K1%N1    
95电阻2.26kΩCR0603-FX-2261ELF1    
96电阻5.1kΩCR0603JA0512G1    
97电阻10kΩ0603WAF1002T5E4    
98电阻120Ω0603WAF1200T5E1    
99电阻10kΩRT0603BRD0710KL4    
100电阻22kΩRT0603BRE0722KL4    
101电阻2.2kΩ0603WAF2201T5E8    
102电容1206W4F4701T5E1206W4F4701T5E8    
103电阻1kΩ0603WAF4701T5E8    
104电阻3kΩ0603WAF4701T5E8    
105电阻470Ω0603WAF4700T5E10    
106电阻20kΩFRC0603F2002TS1    
107芯片DSHP08TSGERDSHP08TSGER1    
108连接器B4B-XH-A(LF)(SN)B4B-XH-A(LF)(SN)1    
109连接器B3B-XH-A(LF)(SN)B3B-XH-A(LF)(SN)1    
110芯片SP485EEN-L/TRSP485EEN-L/TR1    
111芯片ADS1115IDGSRADS1115IDGSR1    
112集成运放LM358DRLM358DR2    
113光耦EL3H4(B)(TA)-VGEL3H4(B)(TA)-VG18    
114达林顿管ULN2003AULN2003A2    
115DC-DC芯片TPS5450DDARTPS5450DDAR1    
116LDO芯片AMS1117-3.3AMS1117-3.31    
117USB连接器KH-TYPE-C-2PKH-TYPE-C-2P1    
118LEDNCD0603R1NCD0603R118    
         
         
         

BOM物料价格统计

PCB描述层数面积(cm2)价格
核心板231.121.60
接口板271.440.50
数字量板2207.075.51
    
总计   

PCB价格统计

PCB贴片点数插件点数小计
核心板13868206
接口板82128210
数字量板490193683
    
总计7103891099

装配价格统计:采用亚克力切割件,10元左右成本。

🏠 我的博客