基于PLC的自动化制造系统外文翻译、中英文翻译、外文文献翻译_第1页
基于PLC的自动化制造系统外文翻译、中英文翻译、外文文献翻译_第2页
基于PLC的自动化制造系统外文翻译、中英文翻译、外文文献翻译_第3页
基于PLC的自动化制造系统外文翻译、中英文翻译、外文文献翻译_第4页
基于PLC的自动化制造系统外文翻译、中英文翻译、外文文献翻译_第5页
免费预览已结束,剩余33页可下载查看

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、届本科毕业设计(论文)外文文献翻译学院:专业:姓名:学号:外文由处:AutomatingManufacturingSystemsw。PLCs附件:1、外文翻译2、外文原文附录1:外文资料翻译译文基于PLC的自动化制造系统15.梯形图逻辑函数主题:?数据处理、数学运算、数据转换、阵列操作、统计、比较、布尔量运算等函数?设计实例小白:?理解基本函数,允许计算和比较?了解使用了内存文件的数组函数15.1 介绍梯行图逻辑输入触点和输出线圈之间允许简单的逻辑判断。这些函数把基本的梯形图逻辑延伸到其他控制形式中。例如,附加的定时器和计数器允许基于事件的控制。在下图15.1中有一个较长的关于这些函数的表。这

2、包括了组合逻辑和事件函数。本章将会研究数据处理和数值的逻辑。下一章将介绍表、程序控制和一些输入和输出函数。剩下的函数会在后面的章节中讨论组合逻辑函数继电器触点线圈事件函数计时显示计数显示数据处理函数移动数学运算转换数字逻辑函数布尔量运算比较列表函数转移入栈/出栈序列发生器程序控制函数分支/循环立即输入/输出错误/中断检测输入输出函数PID通讯高速计数器字符串函数图15.1基本PLC函数分类大多数的函数会使用PLC的存储单元获取值、储存值和跟踪函数状态。一般大部分函数当输入值是“真”时,会被激活。但是,有些函数,如延时断开定时器,可以在无输入时,保持激活状态。其它的函数仅当输入由“假”变“真”时

3、,才会被执行,这就是所谓的上升沿触发。想想,一计数器仅仅是输入由“假”变“真”时才会计数,输入为“真”状态的持续时间并不影响函数动作。而下降沿触发函数仅当输入由“真”变“假”时才会触发。多数函数并非边沿触发:除非有规定说明函数不是边沿触发。标签:我并没有像说明书或者软件里那样准确的画出这些函数。因为这样会节省空间并且易于阅读,但是所有的必要信息我都给出了。15.2 数据处理15.2.1 传递函数有两种基本的传递函数;MOV(值,操作数)-把值传递到指定的存储位置。MVM(值,标号,操作数)-把值传递到指定的存储位置,但是用标号来指定一个传递的位。这个MOV函数从一个存储空间取出一个值放置到另外

4、一个存储空间里。下图15.2给出了MOV的基本用法。当A为“真”,MOV函数把一个浮点数从原操作数传递到操作数存储位置。原操作数地址中的数据没有改变。当B为“真”时,原操作数中的浮点数将被转换成整数存储在操作数存储区中。浮点数会被四舍五入成整数。当C为“真”时,整数“123”将被存储在整数文件N7:23中。2图15.2中,如果ABC都为“真”,那么F8:23的值将会在下一个指令到来前就变化。这与输入输出扫描只发生在逻辑扫描之前或者之后不同。图15.2MOV的基本用法下图15.3给出了更多更复杂的MOV函数用法。当A为“真”时,第一个模块将会把值“123”送入N7:0,同时第二个模块将会把值“-

5、9385”从N7:1送到N7:2中(这个值之所以为负数,是因为我们使用了2s的compliment)。对于基本的MOV函数使用中,二进制数值不是必要的;但是在MVM函数中,二进制数值却是必要的。这个模块中从N7:3移动二进制数值到N7:5中。但是这些“位”在N7:4中仍为“ON”,操作数的其他位将不会受到影响。请注意:N7:5的第一位N7:5/0在指令执行前后仍为“ON”,但是在N7:4中却不同,MVM函数当应用在个别二进制位的处理中时非常有用,但是处理实数却是用处不大了。AMOV原操作数130destN7:0MOV原操作数N7:1destN7:2MVM原操作数N7:3标号N7:4destN7

6、:5MVM原操作数N7:3标号N7:4destN7:6之前数据之后数据地址二进制十进制二进制十进制N7:0B#00000000000000000B#0000000010000010130N7:1B#1101101101010111-9385B#1101101101010111-9385N7:2B#1000000000000000-32768B#1101101101010111-9385N7:3B#010110001011101122715B#1101100010111011-10053N7:4B#001010101010101010922B#001010101010101010922N7:5B

7、#00000000000000011B#000010001010102219N7:6B#1101110111111111B#1101110111111111标签:标号的概念非常重要,并且也可以用在其他函数中。标号允许指令改变一个二进制数据的其中四位,而不用改变它的全部数值。当你使用二进制数据中的位来表示声明,模式或者状态等内容时,你会很希望这么做。图15.3是MOV和MVM函数对二进制数值的操作例子图15.3MOV和MVM函数的使用实例15.2.2 数学函数数学函数将检索一个或多个值,执行一个操作然后把结果储存在内存中。图15.4展示的是一个ADD函数从N7:4和F8:35中读取数据操,把他们

8、转换成操作数的地址格式,把两个浮点数相加,结果储存在F8:36中。该函数有两个原操作数记做“原操作数A”、“原操作数B”。对于该函数来说原操作数顺序可以改变,但是这对于“减法函数”或“除法函数”等其他操作来说却不一定正确,下面列出了其他一些基本的数学函数。其中的一些,如“取负”是一元的函数,也就是说它只有一个原操作数。加原操作数AN7:04原操作数BF8:35操作数F8:36加(值1,值2,操作数)-累加两个值减(值1,值2,操作数)-值1减值2给操作数乘(值1,值2,操作数)-值1乘值2给操作数除(值1,值2,操作数)-值1除值2给操作数取反(值,操作数)将值取反送给操作数消除(值)将值存储

9、区清零标签:为了节省空间上图给出了函数的缩略符号,例如函数ADD(值1,值2,操作数)需要两个原操作数,并把值存入操作数。为了减少描述函数时的空间这些符号将被用在很多地方图15.4数学函数图15.5列出了数学函数的用法,多数函数的执行会给出我们期待的结果,第二个ADD函数从N7:3中取了一个值,加1然后送入原操作数,这就是通常所说的“自加”操作。第一个DIV,执行操作整数25除以整数10,结果四舍五入为最接近的整数,这时,结果被储存在N7:6中。NEG指令取走了新数“-10”,而不是源数据“0”,从N7:4取出的数据符号被取反,结果存入N7:7O地址之前值之后值N7:01010N7:12525

10、N7:2035N7:301N7:40-10N7:50250N7:603N7:7010N7:81000F8:010.010.0F8:125.025.0F8:202.5F8:302.5ADD专AB1desLN7i2ADDsourceA1nuiukuBNF3张丈忖K3SUBsourceAN7:1soviiceDN7:22.N7:4MULTsuiirc?AN7:0semmBNT:1desr.N75DIVionrccAN7:1iuhnuBNKOMNNEciSCHIKCAN7:Idot.N7:7CLRde$tN7:8DIVsourceAF8:lAoiirceBF8:0dcJ.F82DIVsourceAN7

11、1sourceBN7:0esTSQRSomceA.FS;7rest.F8j0图15.7用梯形图表示的方程和图15.7中一样的方程被应用于图15.8所示的CPT函数中。存储区也和上图使用的一样。该表达式被直接输进了PLC程序中CFTDest.F8:0ExpiessiouSQR(LN(F8;1)+XPY(2.718.FS:2)*ACS(FS:3)图15.8利用CPT函数计算数学函数可以导致诸如溢出,进位等状态标识位变化,注意要尽量避免出现像“溢出”这样的问题。但是使用浮点数时这种问题会少一点。而整数极易出现这样的问题,因为它们受到-3276832767这样一个数据范围的限制。15.2.3 转换函数

12、梯形图中的转换函数列在了图15.9中。例子中的函数将会从D存储区读取一个BCD码数据,然后把它转换为浮点数存储在F8:2中。其它的函数将把二进制负数转换成BCD码数据,下面的函数也包含了弧度数和角度的转化。AFRDSoirceAD10:5Dest,F8:2TOD(value,destination)-把BCDK转换为二进制数FRD(value,destination)-把二进制值转换为BCDKDEG(value,destination)-把弧度数转换为度数RAD(value,destination)-把度数转换为弧度数图15.9转换函数图15.10给出了转换函数的例子。这些函数读取一个源数据后

13、,开始转换,结束后储存结果。TOD函数转换成BCD码将会出现“溢出”错误。地址之前值之后值N7:001793N7:1548548F8:03.1413.141F8:14545F8:20180F8:300.785D9:000000000000000000000010101001000D9:100010111100100110001011110010011图15.10转换例子15.2.4 矩阵函数矩阵可以储存多列数据。在PLC中这将是一系列的整数数字,浮点数或者其它类型的数据。例如,假定我们测量和保存一块封装芯片的重量时要使用浮点数存储区F8:20O每十分钟要读取一次重量数据,并且一小时后找出平均重

14、量。这一节我们将聚焦于矩阵中多组数据的处理技术,也就是说明书中所谓的“块”。统计这些函数也是可以处理统计数据的。图15.11列出了这些函数,当A变为“真AVE函数的转换操作从存储区F8:0开始,并算出四个数的平均值。控制字R6:1被用来跟踪运算的进程,并判断运算何时结束。这些运算还有其它的一些是边沿触发的。该次运算可能会需要经过多个扫描周期才能完成。运算结束后,平均值被储存在F8:0中,同时R6:1/DN位被置ON。用二EFile#F8:0:D-F8:4CoutiolR6:1IfiigtJi4jwsition0AVE(开始值,操作数,控制字,长度)-求平均值STD(开始值,操作

15、数,控制字,长度)-求标准差SRT(开始值,控制字,长度)-排列一串值图15.11统计函数如图15.12给出的统计函数例子,它拥有一个有四个字长从F8:0开始的数组数据。每次执行平均值运算的结果储存在F8:4中,标准差储存在F8:5中。一系列数值被存放在从F8:0到F8:3的按升序排列的存储区中。为防止出现数据覆盖现象,每个函数都应该有自己的控制存储器。同时触发该函数与其他运算不是一个明智的选择,因为在计算期间该函数会移动数据,这会导致错误的结果。地址之刖A导通后B导通后C导通后F8:03331F8:11112F8:22223F8:34444F8:40F8:5001.291.

16、29图15.12统计运算旁白:这些函数允许SPC(统计)数据控制中的实数运算。仅有的不是这样的PLC函数是随机函数,它允许出现随机样本数据。-块操作图15.13给出了最基本的块函数。这个COP函数将会拷贝从N7:50到N7:40拥有十个数据的数组。FAL函数将会通过一个表达式执行数学运算。FSC函数通过使用表达式允许数组之间进行比较。FLL函数会利用一个数据把块存储区填充起来。COPSomce=N:50De$T#N7:40LeiLEtli10COP(开始值,操作数,长度)拷贝一个数据块FAL(控制字,长度,模式,操作数,表达式)为得到一个多重值而执行基本的数学运算FSC(控制字

17、,长度模式,操作数,表达式)为得到一个多重值而作一个比较FLL(值,操作数,长度)把一个单一值拷贝到一个数据块图15.13块操作函数图15.14显示的是拥有不同地址模式的FAL函数使用例子。第一个FAL函数将会执行下列运算:N7:5=N7:0+5,N7:6=N7:1+5,N7:7=N7:2+5,N8:7=N7:3+5,N7:9=N7:4+5第二个FAL函数中在表达式值之前缺少“#”标识,因此运算将变为:N7:5=N7:0+5,N7:6=N7:0+5,N7:7=N7:0+5,N8:7=N7:0+5,N7:9=N7:0+5.当B为真,且为模式2时该指令在每次扫描周期到来时执行两个运算。最后一个FA

18、L运算的结果为:N7:5=N7:0+5,N7:5=N7:1+5,N7:5=N7:2+5,N7:5=N7:3+5,N7:5=N7:4+5.最后一个操作貌似没什么用处,但是请注意,该运算是增值的。在C上升沿到来时该运算都会执行一次。每次扫描周期经过时,这几个运算将执行所有的5个操作一次。用来指示每次扫描运算的编号,而插入一个号码也是有可能的。由于有较大的数组,运算时间可能会很长,同时尝试每次扫描时执行所有运算也将会导致看门狗超时错误。10filetofileeLeiiieiittofilefileroelememfiletoeleiiient图15.14文本代数函数例子15.3逻辑函数15.3.1

19、 数值比较EQUAFS:01BF&02B3:5图15.15所示为比较函数,先前的函数块是输出,它取代了输入联系。例子展示的是比较两个浮点数大小的函数EQU。如果数值相当,则输出位B3:5/1为真,否则为假。其他形式的相等函数也裂了出来。EQU(值1,值2)相等NEQ(值1,值2)不相等LES(值1,值2)小于LEQ(值1,值2)小于等于GRT(值1,值2)GEQ(值1,值2)大于等于CMP(表达式)比较两值是否相等MEQ(值,符号,临界值)使用一个符号来比较值是否相等LIM(低限,值,高限)检测值是否在范围内01图15.15比较函数图15.16展示了六个基本的比较函数。图右边是比较函数的操作例

20、子,11EQUAN7:03BN7:020:012Mo0:012TYNEQAN7:0JBN7:02Mi0:012CY_LESAN7;03BN7:020:012rvLEQAN7:03BN7:02030:012TVGRTAN7:03BN7:02O:012rvGEQAN7:03BN7:02图15.16比较函数例子0:012/0=00:0121=1N3=50:0122=0N7:2=30:012/3=00:012/4-1O;0125=l0:0120=10:0121=0N3=3O;0122=0N7:2=3O:01羽=10:012/4=00:012/5=10:012/0=00:0121=1N7:3=l0:01

21、2/2=1N33。:01却】0:0124=00;0125=0图15.16中的梯形图程序在图15.17中又用CMP函数表达了一遍,该函数可以使用文本表达式。12图15.17使用CMP函数的等价表述表达式可以被用来做许多复杂运算,如图15.18所示。表达式将会判断F8:1是否介于F8:0和F8:2之间。图15.18一个更加复杂的比较函数LIM和MEQ函数如图15.19所示。前三个函数将会判断待检测值是否处在范围内。如果上限值大于下限值且待测值介于限值之间或者等于限值,那么输出为真。如果下限值大于上限值,则只有待测值在范围之外时输出值才为真。13图15.19复杂的比较函数图15.20LIM函数的线段

22、表示图15.20展示的线段可以帮助我们判断待测数值是否在限值内。在图15.21中使用FSC指令进行文件与文件的比较也是被允许的。该指令使用了控制字R6:0o它将解释表达式10次,做两次比较在每次逻辑扫描中(模式2)14比较为:F8:10F8:0,F8:11F8:0然后F8:12F8:0,F8:13F8:0然后F8:14F8:0,F8:15F8:0然后F8:16F8:0,F8:17F8:0然后是F8:18F8:0,F8:19F8:0。函数将会继续执行除非发现一个错误状态或者完成比较。如果比较完成没有发现错误状态那么输出A将为“真”。在一个扫描周期中该模式也会一直执行所有比较。或者当函数前面的输入

23、为真时就更新增量一在这种情况下输入为一条线,而一直为真。FSC控制字R6:0长度10位置0模式2表达式#F8:10F8:0图15:21使用表达式的文件比较15.3.2 布尔函数图15.22显示的是布尔代数函数。函数显示从位存储单元获取数据字,执行一个AND操作,把结果储存在一个新的位逻辑单元。这些函数都是面向“字”层面的运算。执行布尔运算的能力,该能力允许不止单一位上的逻辑运算。ANDsoiuceAB3:0qu*BB3:ld印,B3;2AND值1,值2,操作数)二进制“与”函数OR值1,值2,操作数)二进制“或”函数NOT值1,值2,操作数)二进制“非”函数XOR值1,值2,操作数)二进制“异

24、或”函数图15.22布尔函数图15.23展示了布尔函数的使用。前三个函数需要两个参数,最后一个函数只需要一个参数。与函数只有两个操作数同时为真结果位才会被置ON或函数只要两个操作数中任意一个为ON那么它就将结果位置ON异或函数两操作数中有且仅有一个为ON那么结果位才会被置ON非函数将字中所有位取反。15附录2:外文原文AutomatingManufacturingSystemswithPLCs15.LADDERLOGICFUNCTIONSTopics:?Functionsfordatahandling,mathematics,conversions,arrayoperations,statis

25、tics,comparisonandBooleanoperations.?DesignexamplesObjectives:?TounderstandbasicfunctionsthatEwcalculationsandcomparisons?Tounderstandarrayfunctionsusingmemoryfiles15.1INTRODUCTIONLadderlogicinputcontactsandoutputcoilsallowsimplelogicaldecisions.Functionsextendbasicladderlogictoallowothertypesofcont

26、rol.Forexample,theadditionoftimersandcountersallowedeventbasedcontrol.AlongerlistoffunctionsisshowninFigure15.1.CombinatorialLogicandEventfunctionshavealreadybeencovered.ThischapterwilldiscussDataHandlingandNumericalLogic.ThenextchapterwillcoverListsandProgramControlandsomeoftheInputandOutputfunctio

27、ns.Remainingfunctionswillbediscussedinlaterchapters.16CombinatorialLogic- relaycontactsandcoilsEvents- timerinstructions- counterinstructionsDataHandling- moves- mathematics- conversionsNumericalLogic- booleanoperations- comparisonsLists- shiftregisters/stacks- sequencersProgramControl- branching/lo

28、oping- immediateinputs/outputs- fault/interruptdetectionInputandOutput- PID- communications- highspeedcounters- ASCIIstringfunctionsFigure15.1BasicPLCFunctionCategoriesMostofthefunctionswillusePLCmemorylocationstogetvalues,storevaluesandtrackfunctionstatus.Mostfunctionwillnormallybecomeactivewhenthe

29、inputistrue.But,somefunctions,suchasTOFtimers,canremainactivewhentheinputisoff.Otherfunctionswillonlyoperatewhentheinputgoesfromfalsetotrue,thisisknownaspositiveedgetriggered.Consideracounterthatonlycountswhentheinputgoesfromfalsetotrue,thelengthoftimetheinputistruedoesnotchangethefunctionbehavior.A

30、negativeedgetriggeredfunctionwouldbetriggeredwhentheinputgoesfromtruetofalse.Mostfunctionsarenotedgetriggered:unlessstatedassumefunctionsarenotedgetriggered.NOTE:Idonotdrawfunctionsexactlyastheyappearinmanualsandprogrammingsoftware.Thishelpssavespaceandmakestheinstructionssomewhateasiertoread.Alloft

31、henecessaryinformationisgiven.1715.2DATAHANDLING15.2.1 MoveFunctionsTherearetwobasictypesofmovefunctions;MOV(value,destination)-movesavaluetoamemorylocationMVM(value,mask,destination)-movesavaluetoamemorylocation,butwithamasktoselectspecificbits.ThesimpleMOVwilltakeavaluefromonelocationinmemoryandpl

32、aceitinanothermemorylocation.ExamplesofthebasicMOVaregiveninFigure15.2.WhenAistruetheMOVfunctionmovesafloatingpointnumberfromthesourcetothedestinationaddress.Thedatainthesourceaddressisleftunchanged.Whenstruethefloatingpointnumberinthesourcewillbeconvertedtoanintegerandstoredinthedestinationaddressn

33、integermemory.Thefloatingpointnumberwillberoundedupordowntothenearestnteger.WhenCistruetheintegervalueof123willbeplacedintheintegerfileN7:23.NOTE:whenafunctionchangesavalue,exceptforinputsandoutputs,thevalueischangedimmediately.ConsiderFigure15.2,ifA,BandCarealltrue,thenthevalueinF8:23willchangebefo

34、rethenextinstructionstarts.Thisisdifferentthantheinputandoutputscansthatonlyhappenbeforeandafterthelogicscan.18Figure 15.2 ExamplesoftheMOVFunctionAmorecomplexexampleofmovefunctionsisgiveninFigure15.3.WhenAbecomestruethefirstmovestatementwillmovethevalueof130in7:0.And,thesecondmovestatementwillmovet

35、hevalueof-9385fronN7:1toN7:2.(Note:Thenumberisshownasnegativebecauseweareusing2scompliment.)ForthesimpleMOVsthebinaryvaluesarenotneeded,butfortheMVMstatementthebinaryvaluesareessential.Thestatementmovesthebinarybitsfrom7:3toN7:5,butonlythosebitsthatarealsooninthemasN7:4,otherbitsinthedestinationwill

36、beleftuntouched.NoticethatthefirstbitN7:5/0istrueinthedestinationaddressbeforeandafter,butitisnottrueinthemask.TheMVMfunctionisveryusefulforapplicationswhereindividualbinarybitsaretobemanipulated,buttheyarelessusefulwhendealingwithactualnumbervalues.19biirnivJbefoiafterdecLilialbinarydecimalK二0NF000

37、000000000000011011011010101110-938500000000100000101101101101010111130-9385NFN-JN-:410OOOOOOQOOOOOOO0101100010111011001010101010101032768HOIIOHOIOIOIU-938522715becomes1101100010111011-1005310922001010101010101010922N-:50000000000000001100001000101010112219UOUlOlllJlllllNOTE:theconcej?rofaniskisveryu

38、sefiil.anditwillbeusedillotherfimctions.Masksallowiiisnuctionscochangeacoupleofbitsillabimiyinimberwithoutha-iiiatoclianaetheentireniuiiber.Ybumialitwanttodothiswhenyouareusinebitshiammibeitorepresentstates,inodes,stams.ere.Figure 15.3 ExampleofrtieMOVandMMStatementwithBinaiyValues15.2.2Mathematical

39、FunctionsMathematicalfunctionswillretrieveoneormorevalues,performanoperationandstoretheresultinmemory.Figure15.4showsaADDfunctionthatwillretrievevaluesfromN7:4andF8:35,convertthembothtothetypeofthedestinationaddress,addthefloatingpointnumbers,andstoretheresultiF8:36.Thefunctionhastwosourceslabelleds

40、ourceAandsourceBInthecaseofADDfunctionsthesequencecanchange,butthisisnottrueforotheroperationssuchassubtractionanddivision.Alistofothersimplearithmeticfunctionfollows.Someofthefunctions,suchasthenegativefunctionareunary,sothereisonlyonesource.20ADDsoiuceAN7:Q4sourceBFS:35destinationFS:36ADD(alue.vah

41、ie.dsrillationi-addmovaluesSUB(xahie.value.destiiiation)-subtract5ILTL(AahieAahie+destinntion)*multiplyDIV(value,value.destination)-divideKEG(ahie.desrination)-rexeisesigilfrompositivenegaiiv亡CLFL(*alne)*cleartliemeinoi-locationNOTE;Tosavespacethefinicriontypesareslionuitheshortenednotationabove.For

42、exampletheftuictionADDfvalue,veilnetdestinanonflequuesmosoiucevaluesandwillstoreitingdestiiiadonItwillusethisnotarioninam飞placesroreducethebulkofthefunctiondescriptions.Figure 15.4 ArithmeticFunctionsAnapplicationofthearithmeticfunctionisshowninFigure15.5.Mostoftheoperationsprovidetheresultswewoulde

43、xpect.ThesecondADDfunctionretrievesavaluefromN7:3,adds1andoverwritesthesource-thisisnormallyknownasanincrementoperation.ThefirstDIVstatementdividestheinteger25by10,theresultisroundedtothenearestinteger,inthiscase3,andtheresultisstoredN7:6.TheNEGinstructiontakesthenewvalueof-10,nottheoriginalvalueof0

44、,fromN7:4invertsthesignandstoresitinN7:7.21ADDsourceAN-:0sourceBN-:ldest.N7:2ADDsourceA1sourceBNF:3dest.N7:3oddr.beforeafterN7:01010N7:l2525N7:20353UBsourceAN-:1sourceBN-:2dest.N7:4N7:301N7:40-10N7:50250N7:603NRJUTsourceAN-:0sourceBN-:ldest.N7:5N7:7010N7:81000F8:010.010.0F8:l25.025.0DIVsourceAN-:1so

45、urceBN-:0de4N7:6F8:202,5FS302.5NEGsourceAN:4dest.N7:7CLRdest,N7:SDIVsourceAF8:lsoinceBFS:0dest.F8:2DIVsourceAN:lsourceBN*:0desr,F83Note:lecalLmteaeivahmsarelimitedtorangesberween-32769and3276工andrhrearenofiiicionsFigure 15.5 ArithmeticFunctionExampleAlistofmoreadvancedfunctionsaregiveninFigure15.6.T

46、hislistincludesbasictrigonometryfunctions,exponents,logarithmsandasquarerootfunction.ThelastfunctionCPTwillacceptanexpressionandperformacomplexcalculation.22ACStvalue.detitiarion)-invetsecosineCOS(ahie.destiiiation)-cosineASNTiiiaTion)-XtorhepowerofY1.N(value.destuianon)-naiiiraI02LO)o138;8:8:去F尸尸F-

47、ABUD23Figure15.7AnEquationinLadderLogicThesameequationinFigure15.7couldhavebeenimplementedwithaCPTfunctionasshowninFigure15.8.TheequationusesthesamememorylocationschoseninFigure15.7.TheexpressionistypeddirectlyintothePLCprogrammingsoftware.CPTDest.F8:0ExpressionSQR(LN(F8:L)-XPY(2.71S.FS;2)*ACS(F8:3)

48、Figure 15.8 CalculationswithaComputeFunctionMathfunctionscanresultinstatusflagssuchasoverflow,carry,etc.caremustbetakentoavoidproblemssuchasoverflows.Theseproblemsarelesscommonwhenusingfloatingpointnumbers.Integersaremorepronetotheseproblemsbecausetheyarelimitedtotherangefrom-32768to32767.2415.2.3Co

49、nversionsLadderlogicconversionfunctionsarelistedinFigure15.9.TheexamplefunctionwillretrieveaBCDnumberfromtheDtype(BCD)memoryandconvertittoafloatingpointnumberthatwillbestoredinF8:2.Theotherfunctionwillconvertfrom2scomplimentbinarytoBCD,andbetweenradiansanddegrees.FRDSourceAD10:5Dest.F8:2TOD(value.Ld

50、estination)-convertfromBCDtobiliaryFRD(value.destiiiation)concertfiombinarytoBCDDEG(alue.destination)-convertfromradianstodegreesRAD(value.destination)-conveitfiomdegreestoradiansFigure 15.9 ConversionFunctionsExamplesoftheconversionfunctionsaregiveninFigure15.10.Thefunctionsloadinasourcevalue,dotheconversion,andstoretheresults.TheTODconversiontoBCDcouldresult

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论