# 12周上位机实习生学习计划
上位机是指在工业自动化和控制系统中,用于监控、管理和控制下位机(如PLC、传感器、执行器等)的计算机系统。上位机通常具有更强的处理能力和人机交互界面,能够进行数据处理、分析和可视化。它们常用于数据采集、状态监控、报警处理以及系统配置等功能。
上位机与下位机之间通过通信协议(如串口、以太网、CAN等)进行数据传输。
上位机的开发,需要掌握如下三大块的内容:
- **上位机开发技术:**C#语言、Winform桌面应用程序开发技术
- **数据库:**SQLite、SQL Server
- **电表的通讯协议:**内部协议、Modbus协议、1107协议、645协议、698协议、SML协议、DLMS协议
# 上位机开发技术学习(Week 1-3)
C#语言学习途径
WinForms桌面应用程序开发技术学习途径
项目实战
开发一个Winform软件,功能要求如下:
具有登录功能,登录失败要给出提示,失败三次程序退出。正确的用户密码,放在本地的一个XML文件user.xml中,XML文件格式如下:
<?xml version="1.0" encoding="UTF-8"?> <用户列表> <用户> <用户名>zhangsan</用户名> <用户密码>password123</用户密码> <用户性别>男</用户性别> <用户年龄>25</用户年龄> </用户> <用户> <用户名>lisi</用户名> <用户密码>mypassword</用户密码> <用户性别>女</用户性别> <用户年龄>30</用户年龄> </用户> <用户> <用户名>wangwu</用户名> <用户密码>securepass</用户密码> <用户性别>男</用户性别> <用户年龄>22</用户年龄> </用户> </用户列表>
登录成功后,能够加载这个XML文件user.xml
软件能够对用户信息列表进行新增、修改、删除和保存
# 数据库学习(Week 4)
C#语言学习途径
项目实战
- 修改上面“上位机开发技术学习(Week 1-3)”中的软件,用户信息不再用user.xml文件,而是存放在SQLite数据库中。
- 能对SQLite数据库用户信息列表进行新增、修改、删除和保存
# 内部协议学习(Week 5-6)
学习途径
- 内部协议(2天)
- 由老师严犇培训,讲解协议
项目实战
- 开发一款上位机软件,采用485串口通讯。
- 能够从表内读取基本信息(数据标识0x112F)并解析
# Modbus协议、1107协议学习(Week 7)
- 学习途径
- Modbus协议(2天)
- 1107协议(2天)
- 由老师(Modbus协议老师何文远,1107协议老师康宣)培训,讲解协议
最后由老师出一份协议相关试卷,进行考试。
# 645协议、698协议学习(Week 8)
最后由老师出一份协议相关试卷,进行考试。
# SML协议学习(Week 9)
- 学习途径
- SML协议(2天)
- 由老师康宣培训,讲解协议
最后由老师出一份协议相关试卷,进行考试。
# DLMS协议学习(Week 10)
- 学习途径
由老师胡小强培训,讲解协议
最后由老师出一份协议相关试卷,进行考试。
# 公司旧版本上位机学习(Week 11)
学习途径
阅读旧上位机源码
由老师胡小强讲解
项目实战
1、要求能往上位机中,新增一个抄读项,支持从表内抄读并解析
2、要求能往上位机中,新增一个配置项,支持抄读和写入到表内
# 公司新上位机学习(Week 12)
学习途径
阅读新上位机源码
由老师康宣讲解
项目实战
1、要求能往上位机中,新增一个抄读项,支持从表内抄读并解析
2、要求能往上位机中,新增一个配置项,支持抄读和写入到表内