由于物联网工程是一个实践性很强的专业,所以在学习过程中需要多动手,能动手的尽量少哔哔。
为了让大家更好的掌握相关的技能,我给大家整理了99个物联网相关的实战性很强的项目。
大家可以根据自己情况选择其中一些动手实践下,提高实战能力。
设备部分
1. USB转串口转换器使用
2. 用串口调试助手收发串口数据
3. 用Python pyserial读写串口
4. Pymodbus读modbus协议数据
5. vspd虚拟串口软件使用
6. 搭建OPC服务器,用pyopc采集数据
7. 通过GPRS DTU透传串口, 服务器端通过DTU下发命令
8. AT指令控制4G芯片
9. 用一对Zigbee模块串口透传
10. NodeJS串口读写
11. Micropython读写串口发送mqtt消息
12. arduino连接温度传感器采集数据
13. 开发scpi客户端
14. 移植aws iot python sdk到嵌入式Linux网关
15. aws iot device sdk连接aws iot core
16. 基于pg的pyserial、pymodbus、pyopc数据采集
17. Wi-Fi模块内置单片机内通过ppmp协议向ppmp服务器发送生产设备产品质量数据
18. 基于树莓派的无线射频串口监控
19. 基于qrcode的二维码烧写硬件、+ 控制条码热敏打印机软件
网络部分
20. 搭建mqtt代理服务器,用python paho客户端发布订阅消息
21. 用postman调用restful api,模拟api json传输
22. linux上shell调用curl发送数据到postman模拟器
23. 用socat串口转tcp级联中继
24. Wireshark抓包分析mqtt客户端与服务器端交互过程
25. Wireshark抓包分析ssl握手过程
26. Wireshark抓包分析tcp握手
27. socat串口转以太网用debug模式查看分析过往包
28. 用python实现对局域网内的modbus设备嗅探发现
29. 局域网西门子plc设备嗅探,借鉴nmap+lua,用python开发
30. 设计物联网边缘计算节点到边缘计算节点的restful api协议e2e
31. Go语言调用EdgeX Foundry的api接口,向设备发送控制命令
32. 向dtweet推送设备实时数据
33. iptables防火墙规则设置
34. 基于haproxy或lvs的反向代理
云计算部分
35. 租赁配置使用aws的各种云计算服务:如ec2, vpc, cloudwath, dynamodb, kinesis, iot core等
36. 基于树莓派的docker容器部署
运维devops
37. 安装使用vagrant + virtualbox
38. linux shell脚本编写, curl + 调用python获取数据 + 调用api发送数据到go写的http服务
39. 编写cron定时任务脚本用于定期监控服务
40. 用ps、top、df -h、glances、sar等监控服务器性能
41. 用Jenkins流水线自动部署软件
软件部分
42. 用Python读写influxdb时间序列数据库
43. 使用typescript封装rest api
44. 通过node-red连接串口设备数据,然后通过mqtt节点发送到mqtt服务器
45. 用nodejs实时读取串口数据,然后发送到Redis中保存
46. 搭建websocket服务器,然后浏览器中通过websocket接收数据,显示到highcharts/echarts等实时曲线控件
47. 用python实现amqp发送订阅消息
48. 用xlwings控制excel,读取api数据,然后绘制excel图表
49. 选一个java微服务框架如dropwizard/vert.x等开发微服务
50. 在Linux上接摄像头,然后使用opencv库获取摄像头图片,然后进行图像处理
51. 基于Redis timeseries模块读写时间序列数据
52. 在嵌入式Linux上部署轻量级嵌入式web服务器如goahead/boa,然后用Python cgi编写前后台
53. 基于CEP引擎Esper的实时告警,采集温度传感器数据,用打火机连续5分钟高温,发送告警
54. 基于IIS+ASP socket控件 + ASP页面连socket服务器,显示实时数据
55. 基于rabbitmq的js聊天室
56. elasticsearch读写时间序列数据
57. 扩展psutil,采集工控协议设备数据
58. java中用脚本引擎如groovy/jython调用java代码
59. java osgi库felix/karaf开发
60. 采集modsim的电表用电量递增模拟数据,计算每小时发电量每天发电量累计发电量
61. HDF5文件读写
62. raml设计一套物联网云平台api
63. raml设计一套物联网边缘计算api
64. 开发pg SPI,连接工控设备 plcquery,模仿osquery
65. 基于bootstrap、python bottle、python modbus的modbus协议空调数据监控界面
66. 基于bootstrap、bottle、psutil的网管监控系统
67. 基于cep的设备利用率OEE计算
68. 开发pg PL/Python函数,读写modbus
机器学习
69. pytorch模型调用
70. 基于modelica的建模
71. 基于julia的优化模型
告警通知
72. 短信及语音电话服务调用发送告警通知
73. 基于esper的告警规则引擎
74. 点亮嵌入式硬件LED灯和蜂鸣器触发声光告警
75. 微信告警推送,用微信客户端库itchat
安全
76. openssl证书生成
77. nginx/haproxy https配置
78. mqtts配置
79. 基于lynis的边缘计算网关审计插件开发
可视化
80. grafana仪表盘安装使用,显示温度传感器数据
81. openlayers地图显示监控设备
82. 基于Javascript的svg设备矢量图动态更新实时数据
83. 扩展Glances开头的os监控可视化,用来监控工控设备数据
84. 通过3D地图可视化工具Cesium显示3d模型及实时数据
85. Three.js加载3D模型,显示实时数据
86. 摄像头视频手机实时显示
87. 基于matplotlib mpld3的web实时可视化监控
88. grafana插件开发,接入新的数据源如PLC
89. echarts可视化js库使用
90. Geoserver安装及发布地图服务
边缘计算微服务
91. 基于python 微服务框架Falcon的python边缘计算微服务
92. 基于golang的微服务
93. 基于类似netconf的远程阴影同步
94. 基于RedisEdge边缘计算数据库全家桶开发边缘计算微服务
95. 借鉴clearblade思路,aws iot hub下发设备影子文档(nodejs代码)到网关内,然后在网关内的nodejs环境执行下发的nodejs代码
测试
96. 基于tsung或mqtt benchmark的压力测试工具
97. 基于selenium的界面自动化测试
98. phidget 接 relay 测试嵌入式硬件
99. 用pytest编写单元测试
往期精彩文章
《史上最全最强大的物联网书单——涵盖入门、协议、架构、设计、安全、云计算、边缘计算 》
《【笨办法学物联网】之一: 物联网工程专业四年里应该学习哪些实用技能傍身?》
《【笨办法学物联网】之二: 物联网工程专业到底培养的是什么人才?物联网全栈工程师》
《【笨办法学物联网】之三:物联网工程专业10步学习法》
《【笨办法学物联网】之四:99个物联网动手实践项目》
《【笨办法学物联网】之五:软硬件学习环境准备》
《超强干货!物联网网络资源大全:包含基础知识、博客、边缘计算、研究机构、物联网协议、软硬件、标准组织》
《如何了解和学习边缘计算Edge Computing?》
《你不知道的MQTT物联网协议起源——基于卫星通信的石油管道远程监控》
《对物联网理解的十大误区》
《为什么工业现场要有不同的通讯协议?》
《物联网数据上云,正好才是真的好 | Apache Edgent边缘计算介绍》
《物联网边缘计算中的全能数据库RedisEdge 》
《至今为止物联网概念解释的最清楚的文章》
《边缘计算的七种定义,边缘计算与云计算、雾计算的区别 》
《采集PLC数据的25种姿势,你会几种?》
《ClearBlade边缘计算平台介绍》
《深入理解边缘计算微服务框架EdgeX Foundry(一):EdgeX边缘计算微服务框架简介》
《深入理解边缘计算微服务框架EdgeX Foundry(二):边缘计算框架有哪些需求? 》
《深入理解边缘计算框架EdgeX Foundry(三):EdgeX如何应对5大需求问题 》
《深入理解边缘计算框架EdgeX Foundry(四):为什么不能用平均主义方式设计边缘计算软件?》
《深入理解边缘计算框架EdgeX Foundry(五):边缘计算软件主流设计方法盘点》
《深入理解边缘计算框架EdgeX Foundry(六):EdgeX总体架构》