S7-200SMART案例分析——程序框架
今天我想来谈一谈我们在写程序的一个框架,无论什么项目,思路和框架是我们首先应该考虑的事情。一个好的框架有助于我们前期的调试和后期的修改。
我的思路如下:
1.把设备功能化,每个功能独立成一个子程序,每个子程序之间进行交互。这样做,当程序比较大的时候,我们的思路不容易混乱。而且后期也有利于我们优化代码。例如设备需要添加某个功能,我们只需要判断这个功能和哪个子程序有关系,我们就修改对应的子程序即可。
2.刚开始写程序时,一定是先把手动的调试好,不要添加太多的条件,这样不有利于我们调试。等设备调试稳定后,我们再慢慢优化代码,添加保护程序。但是在写手动程序的时候,最重要的是先把停止写好,再写动的程序段,保证一定能停。
3.报警代码在调试初期最好也先写好,例如调试带刹车的垂直轴伺服,我们首先不是先写如何让伺服动作,而是,在伺服报警的时候,我们要把刹车杀住,不然垂直轴可能会由于我们操作不当而报警进而砸下来。
4.使用PLC的地址的时候,我们要预先分配好,不能因为地址很多,所以我们可以随便使用。合理的划分有两个好处,一是,写代码初期不容易占用已经使用的地址,例如V100.0已经使用,我们可能会使用VW100.二是,我们养成良好的习惯,后期在添加代码的时候,我们也不用担心地址的乱用问题。
S7-200SMART案例分析——程序框架相关推荐
- Python图像处理与分析程序框架(包含源代码)
ImageProcessing 整合常用图像处理方法和技术,设计精美 UI 界面,开发出一套基于 OpenCV 的图像处理系统 主界面 实现功能 文件操作 打开.关闭.保存一幅图像 亮度对比度调节 调 ...
- Hadoop大数据平台开发与案例分析
关于举办"Hadoop大数据平台开发与案例分析 "高级工程师 一.课程介绍 1. 需求理解 Hadoop 设计之初的目标就定位于高可靠性.高可拓展性.高容错性和高效性,正是这些设计 ...
- mba案例分析_MBA小组面试案例分析你会吗?打开这份攻略让你一招制胜
MBA面试包括个人面试和小组面试,虽然今年大部分学校取消了小组面试,但还是有部分学校是有小组面试的,小组面试(又称无领导小组讨论)这种杀伤力极强的群面形式总会秒杀大片,既考验团队的配合又考察个人表现, ...
- .NET平台C/S架构应用程序开发核心技术总结(MyKTV点歌系统案例分析)
.NET平台C/S架构应用程序开发核心技术总结(MyKTV点歌系统案例分析) 总结日期:2019年10月10日 ...
- c语言程序大型案例分析,C语言程序设计习题解析与应用案例分析(第2版)
摘要: <C语言程序设计习题解析与应用案例分析(第2版)>从C语言程序设计的基本原理及程序设计的基本思想出发,贯穿"基础-应用"这一主线.<C语言程序设计习题解析 ...
- DL之Keras:基于Keras框架建立模型实现【预测】功能的简介、设计思路、案例分析、代码实现之详细攻略(经典,建议收藏)
DL之Keras:基于Keras框架建立模型实现[预测]功能的简介.设计思路.案例分析.代码实现之详细攻略(经典,建议收藏) 目录 Keras框架使用分析 Keras框架设计思路 案例分析 代码实现 ...
- VS2010/MFC编程入门之四(MFC应用程序框架分析)
上一讲鸡啄米讲的是VS2010应用程序工程中文件的组成结构,可能大家对工程的运行原理还是很模糊,理不出头绪,毕竟跟C++编程入门系列中的例程差别太大.这一节鸡啄米就为大家分析下MFC应用程序框架的运行 ...
- (转载)VS2010/MFC编程入门之四(MFC应用程序框架分析)
上一讲鸡啄米讲的是VS2010应用程序工程中文件的组成结构,可能大家对工程的运行原理还是很模糊,理不出头绪,毕竟跟C++编程入门系列中的例程差别太大.这一节鸡啄米就为大家分析下MFC应用程序框架的运行 ...
- binder 从c到java_Android系统进程间通信Binder机制在应用程序框架层的Java接口源代码分析...
在前面几篇文章中,我们详细介绍了Android系统进程间通信机制Binder的原理,并且深入分析了系统提供的Binder运行库和驱动程序的源代码.细心的读者会发现,这几篇文章分析的Binder接口都是 ...
最新文章
- ConcurrentHashMap实现原理及源码分析
- 你当年没玩好的《愤怒的小鸟》,AI现在也犯难了
- CodeProject 文章概览:ASP.NET 模板相关内容
- How to access the folder of Android
- VTK:简单操作之ProjectPointPlane
- 移动端页面滑动事件穿透问题及其解决方案
- IntelliJ IDEA查看方法在哪里被调用(Usage Search/Call Hierarchy)
- 信号时频图的横纵坐标对调
- 去除网页上图片的虚框和a文字链接上的虚框
- Ubuntu18.04之国内常用源
- 【Spring 5】响应式Web框架实战(上) 1
- 产品经理的段位——说说腾讯的产品职级
- Python3安装turtle库(已成功安装)
- md5加盐(MySQL,PHP)
- 在Mac上将移动磁盘格式化为FAT32分区
- Excel同时打开两个窗口的方法
- 几种编程语言的优缺点
- 洛谷 P1598 垂直柱状图(输入带空格的字符串)
- Matlab中传递函数的几种输入方式
- 【system verilog】继续探究IC前端仿真中的“时间”,timescale,timeunit/timeprecision设置
热门文章
- 做技术要有一颗平常心
- 【ZJOI2015】醉醺醺的幻想乡 题解
- 旺店通·企业版与金蝶云星空对接集成查询货品档案连通物料新增(WK货品同步)
- ATOM基础教程一分屏操作(15)
- 职场没有白走的路,我听过最扯的一句话,就是“学这没用”!
- 时间序列早期分类问题定义和基本思想以及具体方法简述
- 我看电商(作者近三十年从事零售及电子商务管理的总结和分享)
- 精品微信小程序ssm的自驾游拼团旅游网站自由行+后台vuejs
- 第三章 嵌入式Python概述(三)
- JUC-9.“锁”事(显式锁与隐式锁/悲观锁与乐观锁/公平锁与非公平锁/可重入锁/读写锁(独占/共享/降级)/邮戳锁/死锁)、锁升级