Руководство по использованию программы ispsoft на русском

ISPSoft — это интегрированная среда разработки программного обеспечения от компании Delta Electronics. Она предназначена для программирования PLC (Programmable Logic Controllers). Среда разработки включает в себя множество инструментов, которые помогают разработчикам создавать качественное программное обеспечение для автоматизации производства.

Установка

Для установки ISPSoft скачайте установочный файл с официального сайта Delta Electronics. Установка проходит стандартным способом.

Основные функции

  • Разработка программного обеспечения для PLC.
  • Управление проектами.
  • Поддержка различных типов контроллеров.
  • Расширенный набор инструментов для отладки и тестирования.
  • Создание документации.
  • Генерация отчетов о проекте.

Руководство для начинающих

1. Создание проекта

Проект в ISPSoft означает набор файлов и настроек, необходимых для создания программного обеспечения для PLC. Чтобы создать новый проект, выполните следующие действия:

  1. Запустите ISPSoft.
  2. Нажмите на кнопку «Create new project» на главной странице.
  3. Введите имя проекта и выберите тип контроллера, для которого будет разрабатываться проект.
  4. Нажмите кнопку «Create».

2. Создание программы

После создания проекта можно начать создание программы для PLC. Для этого выполните следующие действия:

  1. Откройте созданный проект.
  2. Выберите «Program» в дереве проекта.
  3. Нажмите правой кнопкой мыши на «Program» и выберите «Add new program».
  4. Введите имя программы и выберите тип языка программирования.
  5. Нажмите кнопку «OK».

3. Написание программы

Далее можно начинать написание программы для PLC. ISPSoft предоставляет множество инструментов для визуального создания программ. Для создания программы выполните следующие действия:

  1. Откройте созданную программу.
  2. Используйте инструменты на панели инструментов, чтобы создавать элементы программы (контакты, реле, регистры, и т.д.).
  3. Сохраните программу.

4. Загрузка программы в PLC

После того, как программа написана и сохранена, необходимо загрузить ее в PLC. Для этого сделайте следующее:

  1. Подключите PLC к компьютеру.
  2. В ISPSoft выберите в меню «Target» -> «Download».
  3. Нажмите кнопку «Download».
  4. Дождитесь завершения загрузки программы в PLC.

5. Отладка программы

После загрузки программы в PLC можно приступить к ее отладке. Для этого можно использовать множество инструментов ISPSoft, например:

  • «Simulate» — инструмент для симуляции работы PLC.
  • «Monitor» — инструмент для отслеживания значений переменных в программе.
  • «Breakpoint» — инструмент для установки точек останова программы.

6. Создание документации

ISPSoft позволяет создавать документацию для программы в автоматическом режиме. Для этого выполните следующие действия:

  1. Откройте созданную программу.
  2. Выберите «Document» в меню слева.
  3. Нажмите кнопку «Generate Document».
  4. Дождитесь создания документации.

Вывод

ISPSoft — это мощная интегрированная среда разработки программного обеспечения для PLC. Она предоставляет широкие возможности для разработчиков PLC, позволяя создавать качественное программное обеспечение для автоматизации производства. Надеемся, что данное руководство помогло вам начать работу с ISPSoft и создать свой первый проект для PLC.

Содержание

  1. ISPSoft: руководство для начинающих пользователей
  2. Установка
  3. Основные функции
  4. Руководство для начинающих
  5. 1. Создание проекта
  6. 2. Создание программы
  7. 3. Написание программы
  8. 4. Загрузка программы в PLC
  9. 5. Отладка программы
  10. 6. Создание документации
  11. Вывод
  12. Delta PLC Programming Basics – Upload & Download PLC Program (ISPSoft + Ethernet)
  13. Delta PLC Programming Basics – Upload & Download PLC Program
  14. Delta PLC Programming Basics – Download Program to PLC
  15. Upload Program From PLC Delta to PC On ISP Soft
  16. Delta PLC Programming Basics – Upload & Download Program (ISPSoft + Ethernet cable)
  17. Link to Download ISPSoft, DCISoft and COMMGR – Latest version
  18. Summary
  19. Dvp 14ss2 руководство по программированию
  20. Delta DVP-14SS2 & DM542 Driver “Wiring Diagram”
  21. PLC Delta Programming
  22. Project Video Example

ISPSoft: руководство для начинающих пользователей

ISPSoft — это интегрированная среда разработки программного обеспечения от компании Delta Electronics. Она предназначена для программирования PLC (Programmable Logic Controllers). Среда разработки включает в себя множество инструментов, которые помогают разработчикам создавать качественное программное обеспечение для автоматизации производства.

Установка

Для установки ISPSoft скачайте установочный файл с официального сайта Delta Electronics. Установка проходит стандартным способом.

Основные функции

  • Разработка программного обеспечения для PLC.
  • Управление проектами.
  • Поддержка различных типов контроллеров.
  • Расширенный набор инструментов для отладки и тестирования.
  • Создание документации.
  • Генерация отчетов о проекте.

Руководство для начинающих

1. Создание проекта

Проект в ISPSoft означает набор файлов и настроек, необходимых для создания программного обеспечения для PLC. Чтобы создать новый проект, выполните следующие действия:

  1. Запустите ISPSoft.
  2. Нажмите на кнопку «Create new project» на главной странице.
  3. Введите имя проекта и выберите тип контроллера, для которого будет разрабатываться проект.
  4. Нажмите кнопку «Create».

2. Создание программы

После создания проекта можно начать создание программы для PLC. Для этого выполните следующие действия:

  1. Откройте созданный проект.
  2. Выберите «Program» в дереве проекта.
  3. Нажмите правой кнопкой мыши на «Program» и выберите «Add new program».
  4. Введите имя программы и выберите тип языка программирования.
  5. Нажмите кнопку «OK».

3. Написание программы

Далее можно начинать написание программы для PLC. ISPSoft предоставляет множество инструментов для визуального создания программ. Для создания программы выполните следующие действия:

  1. Откройте созданную программу.
  2. Используйте инструменты на панели инструментов, чтобы создавать элементы программы (контакты, реле, регистры, и т.д.).
  3. Сохраните программу.

4. Загрузка программы в PLC

После того, как программа написана и сохранена, необходимо загрузить ее в PLC. Для этого сделайте следующее:

  1. Подключите PLC к компьютеру.
  2. В ISPSoft выберите в меню «Target» -> «Download».
  3. Нажмите кнопку «Download».
  4. Дождитесь завершения загрузки программы в PLC.

5. Отладка программы

После загрузки программы в PLC можно приступить к ее отладке. Для этого можно использовать множество инструментов ISPSoft, например:

  • «Simulate» — инструмент для симуляции работы PLC.
  • «Monitor» — инструмент для отслеживания значений переменных в программе.
  • «Breakpoint» — инструмент для установки точек останова программы.

6. Создание документации

ISPSoft позволяет создавать документацию для программы в автоматическом режиме. Для этого выполните следующие действия:

  1. Откройте созданную программу.
  2. Выберите «Document» в меню слева.
  3. Нажмите кнопку «Generate Document».
  4. Дождитесь создания документации.

Вывод

ISPSoft — это мощная интегрированная среда разработки программного обеспечения для PLC. Она предоставляет широкие возможности для разработчиков PLC, позволяя создавать качественное программное обеспечение для автоматизации производства. Надеемся, что данное руководство помогло вам начать работу с ISPSoft и создать свой первый проект для PLC.

Источник

Delta PLC Programming Basics – Upload & Download PLC Program (ISPSoft + Ethernet)

delta-plc-programming-basics-upload-download-plc-program

Delta PLC Programming Basics – In this article, we guide you to download a program to plc Delta and upload the program from plc to PC using Delta ISPSoft 3.15 software and ethernet cable.

If you use a COM port (RS232) to download and upload the program plc Delta, refer to the previous post on 365EVN to do it: Upload, Download Program For PLC Delta On ISP Soft Use COMMGR

And if you use an Ethernet Port and Delta PLC Programming software is WPLSoft 2.5 to download and upload the program plc Delta, refer to the previous post on 365EVN: Delta PLC Programming Basics – Download & Upload PLC Program (WPLSoft + Ethernet)

Delta PLC Programming Basics – Upload & Download PLC Program

Upload and download the PLC program are the basic steps when you start learning any PLC. In this article, we guide you on Delta PLC Programming Basics with PLC DVP-12SE. We used:

  • Software:
    • Delta ISPSoft v3.15 is Delta PLC programming software for multi-series PLC. The software can run on Windows 7/8/10.
    • Delta COMMGR 1.14 – Communication management software for Delta PLC
    • Delta DCISoft v1.24 is Ethernet communication software for Delta PLC. You can search, and change the PLC IP address on Delta DCISoft.
    • Download the latest version of all software above at the end of the post.

    tia portal v18 update all version

    wincc flexible smart v4 sp1 download free

    Delta-ispsoft-download-v3.17

    tia-portal-v16-download-full

    Delta PLC Programming Basics – Download Program to PLC

    Step 1: Check the IP address of the Delta PLC using DCISoft

    delta-dcisoft-check-delta-plc-ip-address

    • Connect the PLC Delta DVP-12SE to the PC (laptop) using an Ethernet cable. And then turn on the power.
    • Open Delta DCISoft 1.24 and check the IP of the PLC. If delta plc communication pc successful, the IP address shows on DCISoft.
    • You can refer to the previous post on 365evn for more information: DCISoft 1.24 Download – Delta PLC Ethernet communication software

    Step 2: On Delta COMMGR 1.14

    delta-plc-ethernet-communication-commgr

    • Open Delta COMMGR 1.14. Click “Add” to add a new driver
    • Setting the parameter for delta plc communication with pc
      • Driver name: Enter the name of the driver
      • Connection setup/Type: Ethernet
      • Ethernet card: The PC ethernet card – Th ethernet card is connected to the Delta PLC through a cable.
      Step 3: Delta PLC Programming Basics – On Delta ISPSoft 3.15
      • Open (or create) a project with Delta WPLSoft 2.51
      • On the menu, click “Tools” -> “Communication setting…” and select the driver we configured in step 2. And then click “OK”

      delta-plc-communication-pc-settings

      • Click “Write to PLC” (Ctrl + F8) and download the program to Delta PLC – a step of Delta PLC programming basics.

      download-plc-program-delta-ispsoft-3.15

      Upload Program From PLC Delta to PC On ISP Soft

      • Make the delta plc communication to pc like step 1, step 2.
      • On the menu, click “Tools” -> “Communication setting…” and select the driver we configured in step 2. And then click “OK”.
      • Click “Read from PLC” (Ctrl + F9), and the “Create a new project” appears. Enter the name and browse the folder to save the project.

      delta-plc-programming-basics-upload-program

      • Click “Transfer” and enter the password (if it asks).
      • Waiting for ISPSoft to upload the Delta PLC program to the PC – a step of Delta PLC programming basics.

      upload-delta-plc-program-ispsoft-3.15

      • You can edit the project after uploaded.

      Refer to the video below to do all steps

      Delta PLC Programming Basics – Upload & Download Program (ISPSoft + Ethernet cable)

      Link to Download ISPSoft, DCISoft and COMMGR – Latest version

      • DCISoft – Delta PLC Ethernet communication software: Link
      • Delta ISPSoft free download & COMMGR: Link

      Summary

      Upload program from Delta plc to pc and download program to delta plc are basic steps when you start programming with Delta plc. With the guide above, you can easy to do it. Read more articles about the Delta PLC Programming basics, HMI, Servo… tutorial on 365EVN: Link

      If you have any questions please comment below or on our Facebook group.

      -365evn.com, Refer Delta–

      Источник

      Dvp 14ss2 руководство по программированию

      Логотип семейства Delta DVP-SS2

      Габаритные размеры

      Габаритные размеры контроллера Delta DVP-SS2, мм

      plc247.com

      Basic >> Advanced >> Professional

      Hello everyone!
      In some previous posts plc247.com wrote an article to guide you to use PLC Delta DVP14SS2 to control Servo Motor Yaskawa Sigma 7 & Mitsubishi MR-J4-A.

      Today plc247.com will continue to guide you to use the Delta PLC to control the stepper motor using Driver DM542, this is a very popular driver used all over the world because of its extremely cheap price but good quality.

      Delta DVP-14SS2 & DM542 Driver “Wiring Diagram”

      Note: Most Step Controllers can only control = 5V signal. With DM542 Driver we can control from 5 > 24 V

      + R= 2K2Ω: Reduce voltage from 24VDC to 5VDC

      + DM542 Setting 1000PLS = 1 Rev.

      PLC Delta Programming

      + Simple program to control Stepping Motor

      Project Video Example

      Required Software

      Please share the article to the community if you find it useful. Subscribe to Youtube channel and Website to read new articles from plc247.com

      Источник

Delta Electronics

Привод-Движение-Управление

8 800 555 90 55

Каталог

Ваш заказ (корзина)Добро пожаловать в центр загрузки! / Download CenterДокументация и SoftШкафы управления и автоматикиГарантия и сервис (ЗИП)Примеры (применения, программирования…)ФорумДоставка / ОплатаКарта сайта


Контроллеры Delta DVP внесены в Госреестр средств измерений!

Контроллеры Delta DVP внесены в Госреестр средств измерений!

Контроллеры программируемые Delta DVP прошли положительные испытания, на основании которых было получено свидетельство об утверждении типа средств измерений.

Термоконтроллеры Delta DT внесены в Госреестр средств измерений!

Термоконтроллеры Delta DT внесены в Госреестр средств измерений!

Регуляторы температуры DTx прошли положительные испытания, на основании которых было получено свидетельство об утверждении типа средств измерений.

Документация и Soft

Introduction: PLC Programming WPLSoft & ISPSoft Simulator

#WPLSoft & #ISPSoft simulator steps

Supplies

#WPLSoft #ISPSoft #plc programming #simulator

Step 1: ISPSoft Simulator

ISPSoft simulator need to install COMMGR to run a simulator

1- open Commgr add driver (#DVP simulator) and start it follow image steps 1 to 5.

2 open ispsoft select communication settings from tools menu image step 6.

3 choose the driver name image step 7.

4 click on online mode then run step 8 then 9.

Step 2: WPLSoft Simulator

After programing you can simulate your program click on the below

simulator button 1 on image. to choose a simulator as a communication

Online mode button 2 on image. to start test and simulate your program

Step 3: WPLSoft Ladder Monitoring

to view the input output state you can select (ladder monitoring) or (stop ladder monitoring)

Step 4: WPLSoft Run Mode

to run the PLC and push an X0 input click the below

run button 3 on image. (put PlC ON Run Mode)

set on 4 on image. (active the input)

set off 5 on image. (de-active the input)

Промышленный логический контроллер (ПЛК) — это тот же компьютер, но попроще. В нем есть все или почти все, что есть в любом ПК, но только, может,  в меньшем объеме или не такой производительности. Но зато он может работать там, где обычный компьютер неприменим. У ПЛК есть то, что делает работу с ним проще при управлении оборудованием.  Например,  наличие «на борту» каналов ввода/вывода дискретных логических сигналов. Его программирование специфично. Выбор языков программирования достаточно ограничен, по  большому счету их всего-то пять, и определяется стандартом МЭК 61131-3 [1]. И этого, как убеждает практика, по большому счету вполне достаточно.

Выбор ПЛК фирмы DELTA, кроме наличия собственной IDE, предоставляет доступ к широкому перечню периферийного оборудования. Фирменное ПО, как минимум, удобнее тем, что не требует особой настройки и «в один клик» работает на всей линейке технических средств фирмы. Минусы могут проявиться в отставании от передовых тенденций программирования. Но для ПЛК это не самая большая проблема, т.к. языки, определяемые стандартом, достаточно консервативны, а их настройка под разные типы ПЛК, как правило, не так уж сложна.

Можно даже утверждать, что тип ПЛК достаточно условен, т.к. программирование при наличии промышленного стандарта для них фактически неотличимо (различие в IDE пока не рассматриваем). По крайней мере, сам стандарт на это настраивает. Нам же далее будет важнее реализация определенной идеи. И если уж, как мы увидим,  с этим справится столь элементарный язык программирования, как язык релейно-контактных диаграмм, то это будет вполне по силам и любому другому языку программирования для ПЛК.  И уж тем более по плечу почти любому из известных языков для ПК. 

Краткое введение в IDE

Установка IDE фирмы DELTA ISPSoft не требует от программиста каких-либо усилий. Установив ее, выберем из всего множества [стандартных] языков язык релейно-контактных схем (LD) и функциональных блоков (FB). На рис. 1 приведен пример проекта в среде ISPSoft.

В рамках программного проекта IDE код ПЛК разбивается на программные модули – POU (Program Organization Units), которые могут быть трех типов.

  1. Программа – PROG (в IDE модуль имеет пометку PRG).

  2. Функциональный блок — FB.

  3. Функция — FC.

Дерево проекта содержит типовые узлы, среди которых Программы и Функциональные блоки для нас представляют наибольший интерес. Узел Программы содержит исполняемые модули типа PRG (тип программного модуля и язык, на котором он реализован, указаны правее имени модуля в дереве проекта). Программные модули узла Программы содержат исполняемый программный код и запускаются последовательно сверху вниз. Есть несколько режимов работы, на которые можно настроить их работу. Это циклическое исполнение модуля, запуск его по времени, и по прерыванию.

Каждый из программных модулей  разбивается на Цепи или Командные строки (Network), где каждая строка представляют код на языке LD. Он включает и программный вызов функциональных блоков на языке FB. Цепи исполняются сверху вниз, а код в пределах цепи – слева направо. И эта та специфика, которая кардинально отличает работу «программной схемы» от аналогичной по виду электронной схемы, элементы которой работают параллельно. И наша задача эту специфику, если не устранить, то хотя бы в чем-то смягчить.

Рис.1. Пример проекта в ISP Soft

Рис.1. Пример проекта в ISP Soft

Описанная выше структурная организация программ ПЛК, как и сам язык программирования LD, будут непривычны для программиста, знакомого с обычными языками программирования. Хотя на самом деле принципиальной разницы между ними нет. Особенно с учетом описанной специфики работы программных модулей и кода внутри них. Ведь, и там и там речь идет фактически об обычном последовательном программировании лишь с разной формой,  в общем-то, типичных операторов. А если учесть, что язык LD включает операторы типа пересылки данных, сравнения, вызова функциональных блоков и т.п., то такая связь становится еще очевиднее.

Однако, если окунуться в историю создания и развития ПЛК, то их языки программирования изначально были рассчитаны на технических специалистов, далеких от программирования. Другими словами, специалист, который знает, что такое реле, должен был уметь программировать, используя понятные ему вещи. И здесь таится тот когнитивный диссонанс, преследующий программиста под ПЛК слабо разбирающегося в программировании, но прекрасно понимающего работу электронных схем. Поэтому надо понимать то удивление или непонимание, которое может у него возникнуть при сравнении результатов работы программы для ПЛК и аналогичной ей электронной схемы (предположим, что в идеале и то и другое состоит из одних только реле).

Причина отмеченного выше противоречия достаточно очевидна: компоненты программы ПЛК работают последовательно, а компоненты электронной схемы – параллельно. Можно ли устранить эту разницу и, если можно, то как? Ответ следующий: пусть не полностью, но можно. И поможет нам в реализации этого автоматная модель программ и технология автоматного программирования (теоретическое обоснование его представлено в предыдущей моей статье [3]).

Теория – это, конечно, правильно и хорошо, но вопрос, как ее реализовать, используя достаточно скромные возможности [последовательных] языков программирования для ПЛК? И поскольку «лучше раз увидеть, чем сто раз услышать»  рассмотрим для этого программную реализацию RS-триггера на ПЛК. Его модель, как и автоматные модели отдельного элемента И-НЕ и всего триггера, приведены в упомянутой выше статье.

Реализация RS-триггера

Пример проекта реализации модели RS-триггера приведен на рис. 2. Он содержит  три программных модуля. Это два модуля типа PRG – RS_триггер и CopyStates и один типа FB – И-НЕ. 

В модуле RS_триггер первые две цепи просто инвертируют два установочных входных сигнала триггера. Инвертирование необходимо, чтобы в исходном состоянии они были в единичном состоянии (кнопки, имитирующие соответствующие сигналы, отжаты). Так триггер фиксируется в неком установившемся состоянии и при этом не нужно будет держать кнопки, имитирующие сигналы, в нажатом состоянии.  Переменные bX1 и bX2 будут внутренними локальными переменными, зависящими от состояния внешних входных сигналов ПЛК, соответственно сигналов от кнопок X1 и X2.  

Рис. 2. Проект RS-триггера в ISP Soft

Рис. 2. Проект RS-триггера в ISP Soft

На рис.3. приведена реализация программного модуля CopyStates. Его функция – на каждом цикле работы ПЛК копировать массив слов с именем awStates в массив с именем awStates. Эти массивы содержат сопоставленные друг другу теневые и текущие состояния программных автоматов. Каждому автомату соответствует один элемент массива текущих состояний и сопоставленный ему (с таким же номером) элемент массива теневых состояний. Каждый автомат в процессе функционирования воспринимает элемент массива текущих состояний (это и есть его текущее состояние), и устанавливает в ситуации перехода значение следующего состояния, помещая его значение в элемент массива теневых состояний. Вот собственно и весь механизм реализации функции переходов отдельного автомата и множества параллельных переходов автоматов некой автоматной сети.

Если бы в рамках той же SWITH-технологии аналогичным образом устанавливались текущие состояния автоматов, то это позволило бы рассматривать и в ней параллельную работу автоматов на уровне состояний автоматов. Хотя для корректной реализации параллелизма нужно помещать в теневую память и данные. Однако в нашем случае мы этот механизм оставляем для реализации самому программисту. Даже в силу того, что только он знает, какие данные будут использованы для синхронизации автоматных процессов и, исходя уже из этих соображений, выбирать механизм оперирования ими (один из них мы далее рассмотрим).

Рис. 3. Программный модуль CopyStates

Рис. 3. Программный модуль CopyStates

Итак, реализация автоматов сводится к следующим шагам. Во-первых, создаются массивы для текущих и теневых состояний. Элементы этих массивов назначаются отдельным автоматам: один элемент для отражения текущего состояния и элемент с таким же номером из массива теневых состояний. Программный автомат, находясь в некотором текущем состоянии, анализирует входные сигналы, глобальные и локальные переменные, текущие состояния других автоматов и т.д. и т.п. В ситуации перехода он выполняет назначенные этому переходу действия и устанавливает, если это необходимо, новое текущее состояние, используя для этого массив теневых состояний. 

Описанный процесс реализации функций переходов и выходов происходит последовательно во всех автоматах проекта. И только после этого массив теневых состояний копируется в массив текущих состояний. Это и реализует как раз модуль CopyStates. Далее этот цикл повторяется.

Реализация модели элемента И-НЕ

 Модель элемента И-НЕ реализована в форме функционального блока (FB). Его программная реализация на языке LD приведена на рис. 4. Переменные, назначенные функциональному блоку, представлены на рис. 5 (на рис. 4 они скрыты).

Рис. 4. Реализация элемента И-НЕ на языке LD

Рис. 4. Реализация элемента И-НЕ на языке LD

Любой FB может иметь переменные нескольких типов: локальные переменные – тип VAR,  входные переменные — VAR_INPUT, выходные – VAR_OUTPUT и их совмещенный тип – VAR_IN_OUT. Наша программная реализация элемента И-НЕ имеет только входные и выходные переменные. На диаграмме они представлены входными/выходными линиями соответствующих FB (см. FB с именами И_НЕ1, И_НЕ2 рис. 2). Таким образом, функциональные блоки представляют собой некий аналог, близкий понятию подпрограммы с параметрами в форме его входных и выходных каналов.

Рис. 5. Переменные FB И_НЕ

Рис. 5. Переменные FB И_НЕ

Цепь 1 (Network 1) в реализации модели элемента выполняет стандартную операцию для любого функционального блока в автоматной форме. Она устанавливает автомат в исходное состояние по сигналу сброса – bClear или при установке системной переменной M1002, принимающей однократно на один цикл работы ПЛК единичное значение при включении  ПЛК.

Тестирование и эксперименты

После записи программы в ПЛК она начинает свою работу, сразу входя в режим генерации. Это процесс отражают светодиоды выходов Y1, Y2. Нажатие кнопок установочных входов, приводит модель в то или иное устойчивое состояние. Ввести модель в режим генерации можно, нажав кнопку сброса – X2 (см. рис.2). И это то, что ожидалось от поведения данной модели в данной ситуации. Если генерация наступает, то можно говорить о верной реализации модели, которая правильно отражает поведение реального триггера.

С другой стороны, возможна также следующая реализация модели триггера, которая представлена на рис. 6. И отличие-то, вроде, при этом не очень существенное – просто перенесли установку выходного сигнала непосредственно в цепи, реализующие переходы, устранив в целях экономии две цепи. Но … поведение модели изменилось. Теперь она не входит в режим генерации.

Рис. 6. Измененная модель элемента И-НЕ

Рис. 6. Измененная модель элемента И-НЕ

В чем дело? А дело в привязке выходных каналов к состояниям модели. В первом случае так мы поступили, создав модель по типу автомата Мура. В ней выходной сигнал изменит свое значение, только при смене текущего состояния. В последнем варианте выходной сигнал реализован по типу автомата Мили и изменяется раньше — в процессе реализации перехода, т.е. до смены текущего состояния модели (оно на этот момент еще находится в теневом массиве состояний).  И именно это фатальным образом сказывается на поведении модели. Но, заметим, если бы был реализован механизм теневой памяти (см. [3]), то поведение модели не зависело бы от выбранного типа автомата.

Рис.7. Реализация простейшего RS-триггера

Рис.7. Реализация простейшего RS-триггера

Наверняка найдутся программисты, у которых автоматное программирование вызывает явное неприятие. И вот только для них мы разработали еще один вариант, который представлен на рис. 7. Глядя на него можно понять их чувства.  Но, господа-товарищи, что нам важнее – красивый код или верная его работа? Анализ результатов тестирования приведенных выше двух реализаций придает этому вопросу уже риторическую окраску.

Проектирование первой версии триггера, безусловно, займет больше времени. Но, во-первых, с увеличением сложности создание автоматной модели, наоборот, уменьшает время проектирования. И должно привлекать не время, а качество проектирования.  Оно иное, т.к. в противном случае теория автоматов потеряла бы смысл своего существования. Во-вторых, потратив больше времени на разработку модели, мы можем применять ее как компоненту более сложных проектов, будучи уверенными в результатах ее работы. В-третьих, становится возможным качественно иное документирование проектов, т.к. автоматная форма более компактна и информативна, чем блок-схемное сопровождение программных проектов. И в последнем случае нам в помощь будет положительный опыт использования UML [4].

Вместо заключения

Хотелось бы, заключая статью, продолжить жизнеутверждающую тему предыдущего раздела, но … не получается. А все дело в том, что захотелось получить визуальные подтверждения генерации триггера. И вот с этим-то, как раз,  и возникли проблемы… Чтобы однозначно убедиться, что триггер входит в режим генерации, нужно было просто замедлить его работу. И затем по результатам индикации (в нашем случае это светодиоды Y1, Y2) получить наглядное подтверждение, казалось бы,  очевидного. Но как это сделать, не изменяя его код?

В ПЛК скорость работы программ зависит от длительностью цикла ПЛК. А он зависит от общего времени последовательной работы программных модулей, находящихся в папке Программы проекта (см. рис.1). Добавляем еще один модуль. В него вставляем уже программный цикл (в ПЛК это будут цепи между командами FOR и NEXT). Смотрим на результаты и … видим, что к нашему удивлению, светодиоды не одновременно загораются/гаснут, а в некой очередности. При этом, что еще больше поражает, сама генерация протекает, пусть и большими задержками, но исправно.

Не буду утомлять предположениями, версиями и т.п. После вынужденного (в целях выяснения проблемы) создания транспортной/инерционной задержки (подробнее о ней см. [3]), после «камлания» с длительностью цикл в добавленном модуле выяснилось, что, похоже, проблема именно в длительности цикла ПЛК. Но как быть с ней? Тоже не сложно. Избегайте операторов FOR-NEXT. А в ситуации, когда нужен все же программный цикл?! Создайте автоматный алгоритм, как это описано выше. В них эти операторы не нужны и потому длительность цикла работы самого ПЛК не будет фатально от них зависеть.   

Т.е. мы разобрались с причиной проблемы, так сказать, вывернулись, т.к. теперь понятно, что и как делать, чтобы ее не было. Другими словами, несмотря ни на что, нормальное заключение, кажется, все же получилось… Благодаря все тем же автоматам. Вот, как все просто! Особенно когда знаешь про автоматы…

Литература

1.      Рылов С. Языки программирования стандарта МЭК 61131-3. [Электронный ресурс], Режим  доступа: https://finestart.school/media/programming_languages, свободный. Яз. рус. (дата обращения 18.07.2022).

2.      Серия AS. Руководство по программированию. [Электронный ресурс], Режим  доступа: https://deltronics.ru/images/manual/AS_PrM_RU_[112018].pdf, свободный. Яз. рус. (дата обращения 18.08.2022).

3.      АВТОМАТНОЕ ПРОГРАММИРОВАНИЕ: ОПРЕДЕЛЕНИЕ, МОДЕЛЬ, РЕАЛИЗАЦИЯ.  https://habr.com/ru/post/682422/

4.      Буч Г., Рамбо Дж., Якобсон И. Язык UML. Руководство пользователя. Второе издание. Академия АЙТИ: Москва, 2007. – 493 с.

Понравилась статья? Поделить с друзьями:
  • Дорамектин инструкция по применению в ветеринарии
  • Создание интерактивного руководства
  • Zkteco официальный сайт инструкция по применению
  • Мазда протеже руководство по ремонту скачать
  • Дезар 7 паспорт инструкция по эксплуатации