首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >专门为电气工程师量身定做的Deepseek要来了!

专门为电气工程师量身定做的Deepseek要来了!

作者头像
Hello工控
发布2026-03-09 12:05:30
发布2026-03-09 12:05:30
1480
举报
文章被收录于专栏:Hello工控Hello工控

毫无疑问,对于电气工程师来说,最想AI帮咱做的事情就是PLC编程,我们之前的投票:

具体的数据,大家可以投票后查看,按照目前的有效数据:

所以我尝试训练AI来做PLC编程的助手,界面主体和目前的大模型Deepseek、Kimi相似。

01

Plan

这里随便哪家AI对话都行,我以Kimi 2.5为例,创建一个详细的计划:

给出了整整8个章节的计划:

还是翻译成中文如下:

总体的思维导图:

当然,可以提供免费的方案,从零开始构建的指南:

代码语言:javascript
复制
# AI PLC代码生成器:从零开始构建完整指南
**版本**: 2.0  
**更新日期**: 2026-02  
**适用平台**: Ubuntu 22.04 LTS / Windows 11 WSL2  
**硬件需求**: 8GB+ RAM (16GB推荐), NVIDIA GPU可选  
---
## 目录
1. [项目概述](#1-项目概述)
2. [快速开始](#2-快速开始)
3. [环境搭建](#3-环境搭建)
4. [数据集准备](#4-数据集准备)
5. [模型微调](#5-模型微调)
6. [代码生成与验证](#6-代码生成与验证)
7. [Web界面开发](#7-web界面开发)
8. [高级功能](#8-高级功能)
9. [部署与运维](#9-部署与运维)
10. [故障排查](#10-故障排查)
11. [附录](#11-附录)
---
## 1. 项目概述
### 1.1 系统架构
```
┌─────────────────────────────────────────────────────────────┐
│                     用户交互层 (Web/CLI)                      │
│  ┌──────────────┐  ┌──────────────┐  ┌──────────────┐      │
│  │  自然语言输入  │  │  代码展示    │  │  下载/部署   │      │
│  └──────────────┘  └──────────────┘  └──────────────┘      │
└─────────────────────────────────────────────────────────────┘
                              │
                              ▼
┌─────────────────────────────────────────────────────────────┐
│                  AI生成层 (本地Ollama)                        │
│  ┌─────────────────────────────────────────────────────┐   │
│  │  Qwen2.5-Coder-7B + LoRA微调适配器 (PLC专用)        │   │
│  │  - 温度: 0.1 (确定性输出)                          │   │
│  │  - 上下文: 4096 tokens                            │   │
│  │  - 系统提示: IEC 61131-3专家约束                   │   │
│  └─────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────┘
                              │
                              ▼
┌─────────────────────────────────────────────────────────────┐
│                  验证与优化层                                │
│  ┌──────────────┐  ┌──────────────┐  ┌──────────────┐      │
│  │  MatIEC编译  │  │  语法检查    │  │  自动修复    │      │
│  │  (IEC标准)   │  │  错误定位    │  │  重试机制    │      │
│  └──────────────┘  └──────────────┘  └──────────────┘      │
└─────────────────────────────────────────────────────────────┘
                              │
                              ▼
┌─────────────────────────────────────────────────────────────┐
│                  输出与集成层                                │
│  ┌──────────────┐  ┌──────────────┐  ┌──────────────┐      │
│  │  Beremiz项目 │  │  OpenPLC运行 │  │  物理PLC下载 │      │
│  │  (.plc文件)  │  │  时验证      │  │  (可选)      │      │
│  └──────────────┘  └──────────────┘  └──────────────┘      │
└─────────────────────────────────────────────────────────────┘
```
### 1.2 技术栈
| 层级 | 技术选型 | 版本 | 用途 |
|------|---------|------|------|
| **LLM推理** | Ollama | 0.5.x+ | 本地模型服务 |
| **基础模型** | Qwen2.5-Coder | 7B/14B | 代码生成(推荐) |
| **微调框架** | Unsloth | 2024.12+ | 高效LoRA微调 |
| **编译验证** | MatIEC | 最新源码 | IEC 61131-3语法检查 |
| **IDE集成** | Beremiz | 1.0+ | 可视化编程环境 |
| **运行时** | OpenPLC | 3.0+ | 仿真测试 |
| **Web服务** | FastAPI | 0.115+ | 异步API服务 |
| **前端UI** | Streamlit | 1.40+ | 用户界面 |
| **向量库** | ChromaDB | 0.5.x+ | RAG知识检索 |
| **部署** | Docker Compose | 2.30+ | 容器编排 |
### 1.3 项目文件结构
```bash
~/ai-plc/
├── data/                          # 数据集目录
│   ├── raw/                       # 原始数据
│   ├── processed/                 # 处理后数据
│   ├── plc_dataset.jsonl          # 训练数据
│   ├── test_set.jsonl             #测试数据
│   └── chroma_db/                 # 向量数据库
├── models/                        # 模型目录
│   ├── base/                      # 基础模型
│   ├── adapters/                  # LoRA适配器
│   ├── gguf/                      # 量化导出模型
│   └── Modelfile                  # Ollama定义文件
├── tools/                         # 第三方工具
│   ├── matiec/                    # IEC编译器源码
│   └── beremiz/                   # IDE源码
├── src/                           # 源代码
│   ├── data_generation/           # 数据生成脚本
│   ├── training/                  # 训练脚本
│   ├── inference/                 # 推理管道
│   ├── validation/                # 验证工具
│   ├── web/                       # Web应用
│   └── utils/                     # 通用工具
├── output/                        # 生成结果
│   ├── generated/                 # 生成的PLC代码
│   ├── compiled/                  # 编译后的C代码
│   └── reports/                   # 测试报告
├── configs/                       # 配置文件
├── scripts/                       # 运维脚本
├── tests/                         # 单元测试
├── docs/                          # 文档
├── .env.example                   # 环境变量示例
├── requirements.txt               # Python依赖
├── Dockerfile                     # 容器构建
├── docker-compose.yml             # 容器编排
├── Makefile                       # 常用命令
└── README.md                      # 项目说明
```

02

执行

我这里用Google的Gemini 3.1实施的效果,目前还在初步测试,效果图如下:

截止发稿,实现的功能(目前已经内测了近半个月时间):

1.可以设置自己的API key进行对话生成PLC code;

2.中英文切换:

3.st代码注释和高亮

03

待改进

总结一句话,就是做一个真正为电气工程师创造价值的AI PLC编程助手。

目前还需要自行测试,当然重要的是微调和我个人及开源的知识库整理融合,真正地实践产生价值。安全是我考虑得比较多的,所以开放出来还需要时间来推进。

最后,肯定还得拉出来溜溜!那么前期阶段,还请各位大佬朋友留言建议!到底哪一点对于您来说是最看重的?

阅读更多(戳下方图片)

图片
图片
图片
图片
图片
图片

请长按下方二维码关注Hello工控

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-02-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Hello工控 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档