Î÷ÃÅ×Óplc S7-1200 ÓÉÒÔϼ¸Àà»ù±¾ÔªËØ×é³É£º
OB£º×éÖ¯¿é£¬Ó¢ÎÄÃûOrganization block¡£×éÖ¯¿éÊÇCPUϵͳºÍÓû§³ÌÐòÖ®¼äµÄ½Ó¿Ú£¬¿ÉÒÔÔÚCPUÉϵçÆô¶¯Ê±Å²Óã¬Ò²¿ÉÒÔÑ»·Å²Óã¬Ò²¿ÉÒÔÔÚPLC±¬·¢¹ýʧʱ¼äŲÓá£
DB£ºÊý¾Ý¿é£¬Ó¢ÎÄÃûData block¡£´Ó×ÖÃæ¼ÄÒå±ãÖªÖ÷ÒªÓÃÓÚÖü´æÓû§Êý¾Ý£¬ºÃ±ÈÄ£ÄâÁ¿×ª»»Êý¾Ý£¬Ï൱ÓÚ200ÄÚÀïµÄVÇø£¬Å·Ä·ÁúPLCµÄWÇø¡£
FC£ºº¯Êý£¬Ó¢ÎÄÃûFunction¡£ÎÒÃǾ³£ÔÚFCº¯ÊýÖÐдһЩÐèÒªÖØ¸´Ö´ÐеĴúÂ룬¿ÉÒÔÔÚ³ÌÐò²î±ðµØ·½Å²Ó㬿ÉÒÔ±»OBŲÓã¬Ò²¿ÉÒÔ±»FCŲÓá£Ê¹ÓÃFC¿ÉÒÔ¼ò»¯ÎÒÃÇÐèÒªÖØ¸´Ö´ÐеÄʹÃü£¬Ìá¸ß´úÂëµÄÔËÐÐЧÂÊ¡£FCÀàËÆÓÚ200µÄ×Ó³ÌÐò¡£
FB£ºFC+DB×éºÏ,Òâ˼ÊǺ¬ÓÐDB¿éµÄFCº¯Êý,ÓëFCµÄÇø±ðÊǵ±º¯ÊýŲÓÿ¢Êºó£¬Í¨¹ýStatic±äÁ¿ÈÔÈ»¿ÉÒÔ±£´æÊýÖµ£¬¾³£ÓÃÓÚŲÓüäµÄÊý¾Ý¹²Ïí¡£
OB×éÖ¯¿é
µ±ÎÒÃÇн¨Ò»¸ö³ÌÐòʱ£¬ÏµÍ³»á×Ô¶¯½¨ÉèÒ»¸öMain[OB1]³ÌÐò£¬¸Ã³ÌÐò»áÔÚPLCµÄÿ¸öɨÃèÖÜÆÚ±»Å²Óá£Main³ÌÐòºÍ200ÄÚÀïµÄÖ÷³ÌÐò£¬ÊÇÒ»¸öͬÑùµÄ¿´·¨¡£Ò²ÀàËÆÓÚCÄÚÀïµÄMain ,¼´Îªº¯ÊýÈë¿Úµã£¬ÎÒÃÇ¿ÉÒÔÔÚMain³ÌÐòÄÚÀïŲÓÃÖÖÖÖº¯ÊýºÍ¿é¡£ÏÂÃæµÄͼÊÇÔÚ³ÌÐòÖÐŲÓÃÒ»¸öFCºÍFB£¬È»ºóÔÚFCÖÐŲÓÃÁíÍâÒ»¸öFC£¬ÐγÉǶÌ×ŲÓá£
×¢£º<ŲÓÃfc>¡¢<ŲÓÃfb>ÊÇÓÖÃû£¬Àû±ãÎÒÃÇÓ°ÏóºÍÃ÷È·£¬ÕæÕýµÄµØÖ·ÔÚ[.....]ÖУ¬ÈçOB1,FC2,FC1,FB1µÈµÈ¡£
Mian³ÌÐò°üÀ¨³ÌÐò¶Î1(NW1)ºÍ³ÌÐò¶Î2(NW2)£¬ÔÚMainµÄŲÓýṹÖаüÀ¨ÁË3¸öÔªËØtest¡¢Å²ÓÃFBºÍŲÓÃFC¡£×ÅʵӦ¸ÃÊÇ4¸ö£¬ÉÐÓÐÒ»¸öǶÌ×ÔÚ<ŲÓÃfc>ÖУ¬µã»÷<ŲÓÃfc>×ó²à¼ýÍ·£¬·ºÆðÈçÏÂͼËùʾ£º

ͼ1 FCǶÌ×ŲÓÃ

ͼ2 OB·ÖÀà
ÆÊÎöÉÏͼÖеÄOBÀàÐÍ¡£OB¿éÖ÷ÒªÓÃÓÚ³ÌÐòÑ»·¡¢Æô¶¯¡¢ÑÓʱÖÐÖ¹¡¢Ñ»·ÖÐÖ¹¡¢Ó²¼þÖÐÖ¹¡¢HSCÖÐÖ¹¡¢Õï¶Ï¹ýʧºÍʱ¼ä¹ýʧ°Ë´óÊÂÎñ¡£OB¿éÉÐÓÐÁ½¸öÊôÐÔÊDZàºÅºÍÓÅÏȼ¶£¬ÓÅÏȼ¶Ô½¸ß£¬ÖÐÖ¹¼¶±ðÔ½¸ß¡£ÔÚͬÑùµÄÓÅÏȼ¶±ð£¬OB±àºÅԽС£¬Ô½ÓÅÏÈÖ´ÐС£Main³ÌÐòµÄµØÖ·ÔÚOB1£¬ÊÇÒ»¸öÑ»·ÔËÐгÌÐò£¬ÓÅÏȼ¶Îª1½ÏµÍ¡£Ê±¼ä¹ýʧÊÂÎñµÄÓÅÏȼ¶×î¸ß£¬µ±±¬·¢¸ÃÊÂÎñʱ£¬»áÔÝÍ£Ö´ÐÐMain³ÌÐò£¬ÓÅÏÈÖ´ÐÐʱ¼ä¹ýʧÊÂÎñOB¿é¡£³ÌÐòÑ»·OBÀà¿éµÄ±àºÅÊôÐÔΪ'1;>=123'£¬ÒâΪ¿ÉÒÔ½¨Éè¶à¸öÀàËÆOB¿é¡£ÓÉÓÚн¨³ÌÐòĬÈÏOB±àºÅΪ1£¬¼ÙÉ轨Éè¸ÃÊÂÎñÀàÐÍOB¿é£¬ÄÇôĬÈϱàºÅΪ123Æð£¬Í¬Ê±OB1µÄÖ´ÐÐÒªÓÅÏÈÓÚOB123¡£Õï¶Ï¹ýʧÊÂÎñOB¿éºÍʱ¼ä¹ýʧOB¿éÖ»ÓÐÒ»¸ö¡£

ͼ3 Ìí¼ÓOBпé

ͼ4 ÊÖ¶¯Ñ¡Ôñ½¨Éè±àºÅ
ͼ4 Ìí¼ÓOBпé½çÃæ£¬¿ÉÒÔ¿´µ½£¬ÔÚºìÉ«¾ØÐοò´¦£¬OB±àºÅÊýֵΪ123£¬Ñ¡ÔñµÄ½¨Éè·½·¨Îª×Ô¶¯¡£ÈôÊÇÄãÏëÆðÓñðµÄ±àºÅ£¬¿ÉÒÔÑ¡ÔñÊÖ¶¯·½·¨£¬Í¬Ê±¿ÉÒÔÑ¡Ôñ½¨ÉèOB¿é½ÓÄɵÄÓïÑÔ¡£ÎÞ·ÁÊÔÒ»ÊÔ¡£
ÕâÀï½â˵¼¸¸ö³£ÓõÄOBÀàÐÍ¿éʹÓã¬ÆäËûÀàÐÍOB¿éʹÓ㬸÷ÈË¿ÉÒÔ·ÔÄϵͳ±à³ÌÊֲᡣ
³ÌÐòÑ»·ÊÂÎñOB¿é(program cycle)£º¸Ã¿éÖ÷ÒªÓÃÓÚÖ´ÐÐÑ»·ÔËÐеijÌÐò£¬Ò»Ñùƽ³£Ò»¸ö³ÌÐòÖн¨ÉèÒ»¸ö±ã¿ÉÒÔ£¬¾ÍÊÇĬÈϵÄMain³ÌÐò(OB1)£¬¿ÉÒÔͨ¹ýŲÓÃFCºÍFBÀ´ÊµÏÖÆäËû¹¦Ð§¡£ÏµÍ³CPUÿ¸öɨÃèÖÜÆÚ¶¼»áÖ´ÐиÃÀàÐÍOB¿é¡£
Æô¶¯ÊÂÎñOB¿é(Startup)£º¸Ã¿éÖ÷ÒªÓÃÓÚ³õʼ»¯±äÁ¿£¬µ±PLC¶ÏµçÖØÆô»òÕßCPU´ÓSTOPÇл»ÎªRUNʱ¼äÖ´ÐУ¬Íùºó²»ÔÙÔËÐУ¬Ò²¾ÍÊÇÖ»ÔËÐÐÒ»´Î¡£Ð½¨Ò»¸öDB1¿é£¬Ìí¼ÓÁ½¸ö£¬ÉèÖóõʼֵ¡£
È»ºóн¨Ò»¸öStartupÊÂÎñOB¿é£¬Ð´ÈçϳÌÐò(SCLÓïÑÔ)¡£
¿ÉÒÔ¿´µ½¸ÃÀàÐÍOB¿é±àºÅΪ100£¬ÈôÊÇÔÙ½¨Ò»¸ö¸ÃÀàÐÍOB¿é£¬±àºÅ±ØÐè>=123¡£È»ºóÏÂÔØ³ÌÐò£¬ÕâÀï˳±ãÌáÒ»ÏÂÏÂÔØÑ¡Ïî¡£
ÈôÊÇÊÇÊ×´ÎÏÂÔØ£¬Ñ¡Ôñ'Ó²¼þºÍÈí¼þ£¨½ö¸ü¸Ä£©'¡£ÈôÊDz»ÊÇÊ״Σ¬¿ÉÒÔÑ¡ÔñÄãÐ޸ĵIJ¿·Ö£¬ÕâÑù»áÌá¸ßÏÂÔØËÙÂÊ¡£
Ñ»·ÖÐÖ¹ÊÂÎñOB¿é(Cyclic interrupt)£º¾³£ÓÃÓÚÐèҪ׼ʱִÐеÄʹÃü£¬ºÃ±ÈÐèÒª1ÃëÖÓ²ÉÑù50¸öÄ£ÄâÖµ£¬ÎÒÃÇ¿ÉÒÔ°ÑÑ»·Ê±¼äÉèÖÃΪ20ºÁÃë¡£¿ÉÄÜ»áÓÐÈËÎÊ£¬ÎªÊ²Ã´²»½ÓÄÉͨË×׼ʱÆ÷ÿ¸ô20ºÁÃë²ÉÑùÒ»´ÎÄØ£¿ÓÉÓÚͨË×׼ʱÆ÷»áÊܵ½CPUɨÃèÖÜÆÚµÄÓ°Ïì¡£ÔÚPID³ÌÐòÖУ¬ÎÒÃÇÐèÒª½ÓÄÉÑ»·ÖÐÖ¹ÊÂÎñÀ´µ÷½âÅÌËãPIDÊä³ö¡£
ÔÚʵÑé³ÌÐòÀͨ¹ýINCÖ¸Áî°ÑDB1¿éÄÚÀïµÄ±äÁ¿£¬Ã¿¸ô1Ãë¼Ó1£¬ÔËÐÐЧ¹ûÈçÏ£º

ͼ5 Ñ»·ÖÐÖ¹ÊÂÎñOB
¿ÉÒÔ¿´µ½ÔÚOB30Õâ¸ö³ÌÐò¿éÄÚÀ'Data'.Var2µÄÖµ»áÿ¸ô1Ãëת±ä£¬ÈôÊǰÑINCÖ¸Áî·ÅÔÚMain[OB1]ÄÚÀï»áÊÇʲôÇéÐÎÄØ£¿
Õï¶Ï¹ýʧÊÂÎñOB¿é(Diagnostic error interrupt)£ºµ±PLC±¬·¢¹ÊÕÏʱ£¬»á´¥·¢¸ÃÊÂÎñ£»É¨³ý¹ÊÕÏʱ£¬Ò²»á´¥·¢¸ÃÊÂÎñ£¬ÔÚ¸ÃÄ£¿éÄÚÀÎÒÃÇ¿ÉÒÔ¶Áµ½¹ÊÕÏÐÅÏ¢¡£

ͼ6 Ìí¼ÓÕï¶Ï¹ýʧÊÂÎñOB¿é
ÔÚʵÑé³ÌÐòÀÎÒÃÇÐèÒª²¶»ñÄ£ÄâÁ¿ÊäÈëµÄÒçÍÉ»¯Îó£¬ÒÔÊÇÐèÒª¶ÔÄ£ÄâÁ¿ÊäÈë¾ÙÐÐÉèÖã¬Ìí¼ÓÒç³öÕï¶Ï¹¦Ð§£¬AIͨµÀÓ²¼þ±êʶ·û¡£
ÔÚÉèÖÃÓ²¼þ×é̬ʱ£¬TIA PORTAL ½«ÎªÃ¿¸öÓ²¼þ¹¤¾ß£¨ÈçÄ£¿é¡¢½Ó¿Ú»òÄ£¿é¶Ë¿Ú£¬ÉõÖÁÊÇÖÇÄÜ×°±¸µÄ´«ÊäÇø£©×Ô¶¯·ÖÅÉÓ²¼þ±êʶ·û£¬Ï൱ÓÚÎÒÃǵÄÉí·ÝÖ¤ºÅÂ룬ΨһÎÞ¶þ¡£
ÔÚÕï¶Ï³ÌÐòÖУ¬¿ÉÒÔ»ñÈ¡¹ýʧIO״̬£¬Ó²¼þ±êʶ·ûºÍͨµÀ£¬²¢Ìí¼ÓÁËSTPÖ¸Áî¡£µ±¹ýʧ±¬·¢Ê±¼ä£¬Ê¹PLC´¦ÓÚSTOP״̬£¬Èô²»Ìí¼ÓSTPÖ¸ÁPLCÈÔÒÔRUN״̬ÔËÐС£
ͨ¹ý¶ÁÈ¡IO_State,LADDRºÍChannelÈý¸ö±äÁ¿£¬IO״̬ÒÔ¶þ½øÖÆÃûÌÃÏÔʾ£¬µÚ4λΪ1£¬ÒÔÊǻ᷺Æð¹ýʧ¡£