C语言源程序开发的第一步是什么?

C语言源程序开发的第一步是什么?,第1张

第一步

程序编辑过程中,所输入源文件中的是一些字符码,但是机器能够直接处理的是0、1信息。为此,首先要将源程序文件翻译成0、1码所表示的信息,应用相应的文件保存。这种保存0、1码的文件称为目标程序文件。由源程序翻译成目标程序的过程称为编译。

在编译过程中,还要对源程序中的语法和逻辑结构进行检查。编译任务是由称为编译器的软件完成的。目标程序文件尚且不能执行,它们只是一些目标程序模块。

第二步

将目标程序模块以及程序所需的系统固有目标程序模块(如执行输入、输出 *** 作的模块)链接成一个完成的程序。经正确链接所生成的文件才是可执行文件。完成链接过程的软件称为链接器。

第三步

C语言中的运算符种类很多,正确的使用这些运算符,有以下三点需要注意。

1.含义

要注意区分一个运算符符号在C语言程序中和在普通数学表达式中的意义的不同,如“=”。

2.优先级

在一个表达式中存在多个运算符时候,进行运算的先后顺序。

3.结合性

即在一个表达式中存在多个优先级别相同的运算符时,先进行哪个运算符的运算。

第四步

标识符也称为名字,如变量名、函数名、文件名等。在C语言程序中,所使用的标识符应当符合以下词法规则。

(1).标识符是大/小写字母、数字和下划线所组成的序列,但不能以数字开头。

(2)C语言区分同一字母的大/小写,如abc和abC就是不同的标识符。

(3)C89要求编译器所能识别的标识符长度不多于31个有效字符。C99要求编译器所能识别的标识符长度不多于63个有效字符。

(4)普通标识符不能使用对于系统有特殊意义的名字,如类型名、语句名等。这些对系统具有特殊意义的名字称为关键字。

0是起始数。PLC是电力线通信的简称,步序号为指令的步数,每条指令都有规定的步长,程序的步数从0开始,0是部序的起始数,最大步序由程序存储器的容量决定。步序号是若干条指令中按顺序排列的序号,当PLC投入运行时,它首先执行系统程序和CPU自检等工作。

1、在程序中可以很直观地看到设备的动作顺序。比较容易读懂程序,因为程序按照设备的动作顺序进行编写,规律性较强。

2、在设备故障时能够很容易的查找出故障所处在的位置.

第 1 页

plc专家

最近1小时前有人咨询相关问题

点击立即咨询,了解更多详情

咨询

成都润嘉自动控制系统 广告

3、不需要复杂的互锁电路,更容易设计和维护系统.

SFC的结构:

步+转换条件+有向连接+机器工序的各个运行动作=SFC。

SFC程序的运行从初始步开始,每次转换条件成立时执行下一步、在遇到END步时结束向下运行.

第一章 单流程结构的编程方法

本教程主要介绍在三菱PLC编程软件GX Developer中怎编制SFC顺序功能图。下面以例题1介绍SFC程序的编制法。

例题1:自动闪烁信号生成,PLC上电后Y0、Y1以一秒钟为周期交替闪烁. 本例的梯形图和指令表(如图1-1)。

第 2 页

第 3 页

第 4 页

(A)(B)

第 5 页

(C)

图1-1 闪烁信号(A梯形图 B指令表 C SFC程序)

下面我们开始对图1-1(c)所示的SFC程序进行一下总体认识一个完整的SFC程序包括初始状态、方向线、转移条件和转移方向组成(如图1-1(c))。在SFC程序中初始状态必须是有效的,所以要有启动初始状态的条件,本例中梯形图的第一行表示启动初始步,在SFC程序中启动初始步要用梯形图,现在开始具体的程序输入.

第 6 页

启动GX Develop编程软件,单击“工程"菜单,点击创建新工程菜单项或点击新建工程按钮(如图1-2)。

图1-2 GX Develop编程软件窗口

d出创建新工程对话框(如图1-3)。我们主要是讲述三菱系列PLC,所以在PLC系列下拉列表框中选择FXCPU,PLC类

第 7 页

型下拉列表框中选择FX2N(C),在程序类型项中选择SFC,在工程设置项中设置好工程名和保存路径之后点击确定按钮。

图1-3 新工程创建

第 8 页

d出块列表窗口(图1-4).

图1-4 块列表窗口

双击第零块或其它块,d出块信息设置对话框(如图1-5)。

第 9 页

图1-5 块信息设置对话框

在块标题文本框中可以填入相应的块标题(也可以不填),在块类型中选择梯形图块,为什么选择梯形图块,我们不是在编辑SFC程序吗?原因是在SFC程序中初始状态必须是激活的,而我们激活的方法是利用一段梯形图程序,而且这一

第 10 页

段梯形图程序必须是放在SFC程序的开头部分,在以后的SFC编程中,初始状态的激活都是利用一段梯形图程序,放在SFC程序的第一部分(也即第一块),点击执行按钮d出梯形图编辑窗口(如图1-6),在右边梯形图编辑窗口中输入启动初始状态的梯形图,本例中我们利用PLC的一个辅助继电器M8002的上电脉冲使初始状态生效。在梯形图编辑窗口中单击第零行输入初始化梯形图如(图1-6)所示,输入完成单击“变换”菜单选择“变换”项或按F4快捷键,完成梯形图的变换.

第 11 页

A

B

图1-6 梯形图编辑窗口

第 12 页

图1-6 梯形图输入完毕窗口

注意:如果想使用其他方式启动初始状态,只需要改动上图中的启动脉冲M800

第 13 页

2即可,如果有多种方式启动初始化进行触点的并联即可。需要说明的是在每一个SFC程序中至少有一个初始状态,且初始状态必须在SFC程序的最前面。在SFC程序的编制过程中每一个状态中的梯形图编制完成后必须进行变换,才能进行下一步工作,否则d出出错信息.

以上完成了程序的第一块(梯形图块),双击工程数据列表窗口中的“程序”\“MAIN"返回块列表窗口(图1-4).双击第一块,在d出的块信息设置对话

第 14 页

框中块类型选择SFC(如图1-7),在块标题中可以填入相应的标题或什么也不填,点击执行按钮,d出SFC程序编辑窗口(如图1-8)。在SFC程序编辑窗口中光标变成空心矩形。

图1-7 块信息设置

第 15 页

图1-8 SFC程序编辑窗口

第 16 页

说明:在SFC程序中每一个状态或转移条件都是以SFC符号的形式出现在程序中,每一种SFC符号都对应有图标和图标号。下面我们输入使状态发生转移的条件,在SFC程序编辑窗口将光标移到第一个转移条件符号处(如上图标注).在右侧梯形图编辑窗口输入使状态转移的梯形图。细心的读者从图中可以看出,T0触点驱动的不是线圈,而是TRAN符号,意思是表示转移(Transfer),在SFC程序中所有的转移用TRAN表示,不可以用SET + S□ 语句表示, 这一点请注意。在这里梯形图的编辑不再赘述,编辑完一个条件后按F4快捷键转换,转换后梯形图由原来的灰色变成亮白色,再

第 17 页

看SFC程序编辑窗口中1前面的问号(?)不见了。下面我们输入下一个工步,在左侧的SFC程序编辑窗口中把光标下移到方向线底端,按工具栏中的工具按钮或单击F5快捷键d出步输入设置对话框(如图1-9)。

图1—9 SFC符号输入

输入图标号后点击确定,这时光标将自动向下移动,此时我们看到步图标号前面有一个问号(?),这表示对此步我们还没有进行梯形图编辑同样右边的梯形图

第 18 页

编辑窗口是灰色的不可编辑状态(如图1-10).

图1-10 没编辑的步

第 19 页

下面我们对工步进行梯形图编程,将光标移到步符号处(在步符号处单击),此时再看右边的窗口边场合可编辑状态,在右侧的梯形图编辑窗口中输入梯形图,此处的梯形图是指程序运行到此工步时要驱动哪些输出线圈,本例中我们要求工步20驱动输出线圈Y0以及T0线圈,程序(如图1-11)。用相同的方法把控制系统的一个周期编辑完后,最后要求系统能周期性的工作,所以在SFC程序中要有返回原点的符号。在SFC程序中用(JUMP)加目标号进行返回 *** 作(如图1-11所示)。输入方法是把光标移到方向线的最下端按F8快捷键或者点击按钮,在d出的对话框中填入跳转的目的步号单击确定按钮(如图1-11)。

第 20 页

图1-11 跳转符号输入

如果在程序中有选择分支也要用JUMP+“标号”来表示,此用法在后续的课程中有介绍,在此我们只是编写了单序列的SFC功能图(如图1-12)。

当输入完跳转符号后,在SFC编辑窗口中中我们可以看到有跳转返回的步符号的方框中多了一个小黑点儿,这说明此工步是跳转返回的目标步,这为我们阅读SFC程序也提供了方便。

第 21 页

所有的SFC程序编辑完后,我们点击变换按钮进行SFC程序的变换(编译)如果在变换时d出块信息设置对话框不用理会点击执行按钮即可,变换后的程序我们就可以进行仿真实验或写入PLC进行调试了.如果想观看SFC程序对应的顺序控制梯形图我们可以这样做:点击工程\编辑数据\改变程序类型,进行数据改变(如图1-13)。

第 22 页

图1-12 完整的SFC程序

选择改变数据类型

第 23 页

图1-13 数据变换

改变后我们可以看到由SFC程序变换成的梯形图程序(如图1-14)。

图1-14 转化后的梯形图

小结:以上介绍了单序列的SFC程序的编制方法,通过学习我们基本了解了SFC程序中状态符号的输入方法。在SFC

第 24 页

程序中仍然需要进行梯形图的设计,SFC程序中所有的状态转移用TRAN表示。这一点一定要注意区别,当你明白了TRAN的用法后,你就会觉得SFC程序的设计是如此的简单。

第二章 多流程结构的编程方法

上一章我们讲述了单流程结构的编程方法,本章深入讲解多流程结构的编程方法,多流程结构是指状态与状态间有多个工作流程的SFC程序,多个流程之间是通过并联方式进行连接的,并联连接的流程可以有选择性分支、并行分支、选择性汇合、并行汇合等几种连接方式。下面以具体的实例介绍。

第 25 页

例题1:某专用钻床用来加工圆盘状零件均匀分布的6个孔, *** 作人员放好工件后,按下起动按钮X0,Y0变为ON,工件被夹紧,夹紧后压力继电器X1为ON,Y1和Y3使两个钻头同时开始工作,钻到由限位开关X2和X4设定的深度时,Y2和Y4使两个钻头同时上行,升到由限位开关X3和X5设定的起始位置时停止上行。两个都到位后,Y5使工件旋转600,旋转到位时,X6为ON,同时设定值为3的计数器C0的当前值加1,旋转结束后,又开始钻第二对孔。3对孔都钻完后,计数器的当前值等于设定值3,Y6使工件松开,松开到位时,限位开关X7为ON,系统返回初始状态.根据例题要求写出I/O表:

第 26 页

1、输入2、 输出

启动按钮X0工件加紧Y0

压力继电器X1 两钻头下行Y1 Y

两钻孔限位X2 X4 钻头上升Y2 Y4

两个钻头原始位X3 X5 工作旋转Y5

旋转限位X6工作松开Y6

工作松开限位X7

第 27 页

功能示意图:

功能示意图

分析:由题目要求我们可以在练习纸上编辑出顺序控制功能图(如图2-1)所示。

第 28 页

打开GX developer软件,设置方法在第一章已经讲过,在此不再赘述。本例中我们还是利用M8002作为启动脉冲,程序的第一块我们输入梯形图,按照上一章讲解的单序列SFC程序输入方法。

第 29 页

百度文库

搜索

sfc顺序图要求每次重启都从第一步开始运行怎么转移

百度文库10亿海量资料,查找管理一应俱全

打开APP


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11783347.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存