线下实训
HOME
线下实训
正文内容
西门子plc编程入门学习 图解西门子PLC编程速成宝典:入门+提高
发布时间 : 2024-11-25
作者 : 小编
访问数量 : 23
扫码分享至微信

图解西门子PLC编程速成宝典:入门+提高

德国西门子(SIEMENS)公司生产的可编程序控制器在我国的应用相当广泛,冶金、化工、电力、建材、机械制造、汽车、轻纺、交通运输、环保及文化等各个行业领域都有应用。西门子(SIEMENS)公司的PLC产品包括LOGO、S7-200、S7-1200、S7-300、S7-400、S7-1500等。

今天就给大家推荐《图解西门子PLC编程速成宝典:入门篇》《图解西门子PLC编程速成宝典:提高篇》

《图解西门子PLC编程速成宝典:入门篇 》以西门子S7-200 SMART PLC 为介绍对象,以其硬件结构、指令系统为基础,以熟悉软件应用、编程设计为最终目的;《图解西门子PLC编程速成宝典:提高篇 》以西门子SIMATIC S7-1200 PLC 为讲授对象,以其硬件结构、指令系统为基础,以熟悉软件应用、学会编程设计为最终目的。书中内容循序渐进、系统全面,以便读者夯实基础、提高水平,最终达到从工程角度灵活运用的目的。

编辑推荐

1)图文并茂、图说指令、列举应用,可为读者提供系统的编程方法,解决读者编程无从下手和如何选择编程指令的难题。2)以西门子S7-200 SMART PLC 硬件结构、工作原理、Modbus RTU 通信和以太网通信、西门子V20 变频器、西门子V90 伺服电动机、模拟量为基础,结合习题解析,为读者打好西门子编程的基础。

3)以西门子SIMATIC S7-1200 硬件结构、V90 伺服PN 工艺对象、模拟量等为基础,解析指令与应用,为读者打好SIMATIC S7-1200 编程的基础。

4)语言通俗易懂,减少了专业术语带来的困惑,使读者少走弯路。

内容简介

《图解西门子PLC编程速成宝典:入门篇》全面介绍了西门子S7-200 SMART PLC软件安装、硬件接线、指令系统和编程软件 的使用技巧,指令和功能块 的使用方法(这些方法易学易用,可以节约大量的设计时间),PLC 之间、PLC 与V20 变频器、PLC 与西门子V90 伺服电动机、PLC 和组态软件之间的通信编程和调试的方法,编程向导运动控制库和PID 控制系统参数的整定方法,人机界面——触摸屏的组态和应用,以及常用的变频器和PLC 的通信方法。实例讲解 贯穿了全书。本书适合PLC 初学者,以及高等院校机械工程、自动化等相关专业师生阅读。

内容简介

《图解西门子PLC编程速成宝典:提高篇》通过图文介绍了西门子 SIMATIC S7-1200 PLC软件安装、硬件接线、指令系统和编程软件 的使用技巧,TIA Portal 软件应用、指令和功能块以及程序架构的使用方法,PLC之间、PLC 与变频器、PLC 与 V90 伺服、PLC 与组态软件之间的通信编程、调试和在线仿真的方法,并介绍了运动控制工艺对象、高速计数器的各种用法,以及常用的 Modbus 通信S7 通信和开放式通信编程方法。本书可供自动控制工程师、PLC 工程师、硬件电路工程师及 PLC 维护人员,以及高等院校电气自动化、机械电子工程等相关专业师生参考。

新手西门子PLC编程技巧,就是简单快速好用

本文通过例程的方式总结一些常用的西门子PLC编程技巧,从简单到复杂,从梯形图到SCL,希望对大家有所帮助。

(一)PLC系统常闭点

PLC程序的绝对常闭点,可以作为逻辑支路断开、调试或检修的屏蔽开关,尽量使用比较独立的存储位。

(二)PLC系统常开点

PLC程序的绝对常开点,可以作为逻辑支路接通、调试或检修的接通开关,尽量使用比较独立的存储位。

(三)PLC系统上电脉冲

PLC程序的系统上电脉冲,可以作为系统初始化脉冲来复位、清零和设置系统重要参数,尽量使用比较独立的存储位。

(四)一键触发启停功能

用一个按钮实现启动和停止功能,可以作为操作按钮不够时的一个补救措施。

(五)模拟量输入标定功能

将整数的模拟量标定为实数的工程量,相当于博途中自带的SCALE_X ,但该子程序结合高低量程限制后,标定和调试都更加方便。

(1)子程序调用

(2)子程序变量声明

(3)SCL代码

IF (#Emin < #Emax) AND (#Dmin < #Dmax) THEN

IF #Raw < #Dmin THEN

#RawTemp := #Dmin;

END_IF;

IF #Raw > #Dmax THEN

#RawTemp := #Dmax;

END_IF;

IF (#Raw >= #Dmin) AND (#Raw <= #Dmax) THEN

#RawTemp := #Raw;

END_IF;

#OutReal := (INT_TO_REAL(#RawTemp - #Dmin) / INT_TO_REAL(#Dmax - #Dmin)) * (#Emax - #Emin) + #Emin;

#OutPercentage := (#OutReal / (#Emax - #Emin)) * 100.0;

ELSE

#OutReal := 0.0;

#OutPercentage := 0.0;

END_IF;

(六)模拟量输出标定功能

将实数的工程量标定为整数的数字量,相当于博途中自带的NORM_X ,但该子程序结合高低量程限制后,标定和调试都更加方便。

(1)子程序调用

(2)子程序变量声明

(3)SCL代码

IF (#Dmin < #Dmax) AND (#Emin < #Emax) THEN

IF #Raw < #Emin THEN

#RawTemp := #Emin;

END_IF;

IF #Raw > #Emax THEN

#RawTemp := #Emax;

END_IF;

IF (#Raw >= #Emin) AND (#Raw <= #Emax) THEN

#RawTemp := #Raw;

END_IF;

#OutInteger := REAL_TO_INT(((#RawTemp - #Emin) / (#Emax - #Emin)) * INT_TO_REAL(#Dmax - #Dmin) + INT_TO_REAL(#Dmin));

#OutPercentage := ((((#RawTemp - #Emin) / (#Emax - #Emin)) * INT_TO_REAL(#Dmax - #Dmin) + INT_TO_REAL(#Dmin)) / INT_TO_REAL((#Dmax - #Dmin))) * 100.0;

ELSE

#OutInteger := 0;

#OutPercentage := 0.0;

END_IF;

RETURN;

(七)冒泡法排序功能

通过冒泡法升序或降序模式排序数组。

(1)子程序调用

(2)子程序变量声明

(3)模式为1(升序)的运行结果如下图所示:

(4)模式为0(降序)的运行结果如下图所示:

(5)SCL代码

IF #Enable THEN

//获取数组上限

#L := LOWER_BOUND(ARR := #Array, DIM := 1);

//获取数组下限

#H := UPPER_BOUND(ARR := #Array, DIM := 1);

//冒泡法排序

FOR #i := #L TO #H-1 DO

FOR #j := #L TO #H-1-#i DO

IF #Mode THEN

//升序

IF #Array[#j] > #Array[#j + 1] THEN

#temp1 := #Array[#j];

#Array[#j] := #Array[#j + 1];

#Array[#j + 1] := #temp1;

END_IF;

ELSE

//降序

IF #Array[#j] < #Array[#j + 1] THEN

#temp1 := #Array[#j];

#Array[#j] := #Array[#j + 1];

#Array[#j + 1] := #temp1;

END_IF;

END_IF;

END_FOR;

END_FOR;

END_IF;

(八)斜坡函数功能

输出值按照指定斜率(单位/秒)跟随设定值,可以用来防止数值突变,这个功能可以在博途中添加扩展库函数(LGF)后直接调用Ramp函数。

(1)子程序调用

(2)子程序变量声明

(3)SCL代码

#rv1:= RD_SYS_T(#ActualTime);

IF #InitFB = true THEN

#LastTime := #ActualTime;

#AuxOut := #SetPoint;

#Out := #AuxOut;

END_IF;

#DeltaTime_T:= T_DIFF(IN1:=#ActualTime, IN2:=#LastTime);

#DeltaTime_DI:= TIME_TO_DINT(#DeltaTime_T);

#DeltaTime:= DINT_TO_REAL(#DeltaTime_DI);

#DeltaTime := #DeltaTime / 1000.0;

#LastTime := #ActualTime;

IF #SetPoint < #AuxOut THEN

#Out := #AuxOut;

#auxR := #AuxOut - (#Rate * #DeltaTime);

#Out := #AuxOut;

#AuxOut := MAX(IN1 := #auxR, IN2 := #SetPoint);

#Out := #AuxOut;

RETURN;

ELSE

IF #SetPoint > #AuxOut THEN

#Out := #AuxOut;

#auxR := (#Rate * #DeltaTime) + #AuxOut;

#Out := #AuxOut;

#AuxOut := MIN(IN1 := #auxR, IN2 := #SetPoint);

#Out := #AuxOut;

END_IF;

END_IF;

RETURN;

例程说明

以上例程均在博途V15.1环境下测试通过,大家有什么好的编程技巧,欢迎留言!

相关问答

西门子plc零基础自学方法?

西门子PLC入门自学方法。通过学习PLC的基础知识和原理,掌握PLC的工作原理和编程方法。通过实践和实际项目应用,提高PLC编程和调试的能力。通过学习西门子PLC的...

西门子PLC编程是什么?难学吗?

目前西门子用的挺广泛的,可以说是和是三菱平分天下,学这两个的特别多,但是三菱的比较容易,西门子就稍微有些难,但是你有电路基础也不难,只要用心。目前西门子...

西门子PLC的基础知识?

PLC的基础知识在工业生产过程中,大量的开关量顺序控制,它按照逻辑条件进行顺序动作,并按照逻辑关系进行连锁保护动作的控制,及大量离散量的数据采集。传统上...

西门子plc入门到精通书籍?

要学习西门子PLC从入门到精通,以下是一些推荐的书籍:《西门子PLC编程从入门到精通》:这本书适合初学者,系统地介绍了西门子PLC的基本原理、硬件组成、编程软...

西门子plc运算指令?

西门子PLC的运算指令包括算术运算指令,逻辑运算指令,比较运算指令,移位指令和其他特殊函数指令。这些指令用于在PLC程序中对数据进行操作,满足自动化控制系统...

如何自学PLC?

自学PLC可以按照以下步骤进行:1.学习PLC基础知识:了解PLC的基本概念、工作原理、组成部分等。可以通过阅读相关书籍、查阅在线教程、观看视频教程等途径进行...

请问西门子PLC手动步进程序怎么写?

编写西门子步进程序需要了解以下几个方面:1.控制模块:需要确定您使用的控制模块型号和对应的运动控制方式。例如,使用S7-200模块时需要使用指令集中的特殊...

西门子PLC写程序块?

回答如下:西门子PLC写程序块的步骤如下:1.打开西门子PLC编程软件(如Step7)并创建一个新的工程。2.在工程中创建一个程序块。可以选择创建一个新的程序块...

西门子PLC编程时常开和常闭是怎么区分的?

1)继电器控制的电机的启保停电路看懂。2)把启动按钮和停止按钮连接到plc上,用T形图实现。3)启动和停止按钮分别用常开和常闭的四种组合方式实现上述功能。...

西门子plc200通信步骤?

西门子PLC200的通信步骤如下:1.确保PLC200与外部设备(如上位机、HMI等)之间的物理连接正常,包括电缆连接和接口设置。2.在PLC200中配置通信参数,包括通信...

 餐饮营销  抗旱救灾 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部