Страница 986 из 1052 ПерваяПервая ... 4868869369769849859869879889961036 ... ПоследняяПоследняя
Показано с 9,851 по 9,860 из 10512

Тема: ВОПРОС-ОТВЕТ (отвечаем на простые вопросы от новичков)

  1. #9851

    По умолчанию

    Кстати да, проще плату переставить в новую панель, там даже чтобы батарейку заменить, надо плату снимать. 2 мин на всё.

  2. #9852
    Пользователь
    Регистрация
    08.08.2023
    Адрес
    Новосибирск
    Сообщений
    7

    По умолчанию

    Здравствуйте!
    Начал рассматривать пример программ для ПЛК 1хх (с сайта). Запускаю программу №4 (Задание ШИМ на выходе ПЛК) и на выходе ПИД 0 (все в режиме эмуляции).
    Входные данные ввожу, но на выходе все равно 0. Есть кто рассмотрел данный пример?
    Последний раз редактировалось Habib_1; 24.08.2023 в 05:18.

  3. #9853

    По умолчанию

    Цитата Сообщение от Habib_1 Посмотреть сообщение
    Здравствуйте!
    Начал рассматривать пример программ для ПЛК 1хх (с сайта). Запускаю программу №4 (Задание ШИМ на выходе ПЛК) и на выходе ПИД 0 (все в режиме эмуляции).
    Входные данные ввожу, но на выходе все равно 0. Есть кто рассмотрел данный пример?
    Ну выложите сюда то, что тестируете, так быстрее будет.
    Если там используются для пид библиотеки овена, то они не поддерживают эмуляцию (их реализация - в ПЛК)

  4. #9854
    Пользователь
    Регистрация
    08.08.2023
    Адрес
    Новосибирск
    Сообщений
    7

    По умолчанию

    Цитата Сообщение от 1exan Посмотреть сообщение
    Если там используются для пид библиотеки овена, то они не поддерживают эмуляцию (их реализация - в ПЛК)
    Да там библиотека PID_regulators. Спасибо, думаю с контроллером пробовать буду.

  5. #9855

    По умолчанию

    Здравствуйте!
    Если я к RS-485, который соединяет ПЛК и МВ, подключаюсь параллельно преобразователем интерфейса USB/RS485, чтобы прослушать порт, то данные в этом порту идут, но в codesys уже не поступают на переменные.
    Так и должно быть?
    Данные идут на прослушке такого типа:
    3a 31 35 30 33 30 31 31 38 30 30 32 38 41 37 0d0a
    3a 31 36 30 33 30 31 31 38 30 30 32 38 41 36 0d0a
    3a 31 30 30 33 30 31 31 38 30 30 32 38 41 43 0d0a

    что то не похоже на modbus rtu?
    Последний раз редактировалось senkos; 24.08.2023 в 09:42.

  6. #9856
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,255

    По умолчанию

    Цитата Сообщение от senkos Посмотреть сообщение
    Здравствуйте!
    Если я к RS-485, который соединяет ПЛК и МВ, подключаюсь параллельно преобразователем интерфейса USB/RS485, чтобы прослушать порт, то данные в этом порту идут, но в codesys уже не поступают на переменные.
    Так и должно быть?
    Данные идут на прослушке такого типа:
    3a 31 35 30 33 30 31 31 38 30 30 32 38 41 37 0d0a
    3a 31 36 30 33 30 31 31 38 30 30 32 38 41 36 0d0a
    3a 31 30 30 33 30 31 31 38 30 30 32 38 41 43 0d0a

    что то не похоже на modbus rtu?
    если Вы включились в сеть как мастер то конечно другой мастер может перестать получать данные
    а по поводу посылок это ascii , вот описание например MODBUS Message ASCII framing
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  7. #9857

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    по поводу посылок это ascii , вот описание например MODBUS Message ASCII framing
    Круто, спасибо! И точно у меня ASCII был выставлен в настройках RS485.
    Теперь такие красивые читаемые пакеты шлет:
    00:00:00.717 - Request: 16 03 01 18 00 28 c7 08
    00:00:00.717 - ID: 22, Fn: 3 (Read HR), addr: 280, count: 40, CRC: 0x8c7

    00:00:00.868 - Request: 10 03 01 18 00 28 c7 6e
    00:00:00.868 - ID: 16, Fn: 3 (Read HR), addr: 280, count: 40, CRC: 0x6ec7

    00:00:01.032 - Request: 11 03 01 18 00 28 c6 bf
    00:00:01.032 - ID: 17, Fn: 3 (Read HR), addr: 280, count: 40, CRC: 0xbfc6

  8. #9858

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    Для панели мастер можно создать в слейве, аналог массива ARRAY [0..7] OF COMPRESSOR; и отправить масссивом всё. 2 BYTE тоже лучше объединить.
    У панели мастера есть недостаток, хоть один регистр с неверным адресом, будет сильно тормозить.
    Решил панель сделать Мастером.
    В конфигурации ПЛК воссоздал образ структуры COMPRESSOR по каждому компрессору свои переменные.
    На скрине отражается это: scr-1.jpg

    Если все правильно я понял, то у меня возникли сложности:
    1) Как в панели из первого WORDа получить биты, в них будут передаваться с ПЛК в панель алармы и статусы. Или же так и прописать их отдельными переменными в структуре и в конфигурации ПЛК, по 8шт WORD на каждый компрессор.
    2) Каким образом мне присвоить выходам значения члена массива COMPRESSORS[k]?

    Вручную присвоить каждому выходу свое значение это наверное не вариант?
    Последний раз редактировалось senkos; 24.08.2023 в 22:05.

  9. #9859

    По умолчанию

    Цитата Сообщение от senkos Посмотреть сообщение
    Решил панель сделать Мастером.
    В конфигурации ПЛК воссоздал образ структуры COMPRESSOR по каждому компрессору свои переменные.
    На скрине отражается это.
    Если все правильно я понял, то у меня возникли сложности:
    1) Как в панели из первого WORDа получить биты, в них будут передаваться с ПЛК в панель алармы и статусы.
    2) Каким образом мне присвоить выходам значения члена массива COMPRESSORS[k]?scr-1.jpg

    Вручную присвоить каждому выходу свое значение это наверное не вариант?
    Вы не совсем правильно поняли, в структуре вы можете оставить байты ( у меня на скрине с байтами), а можно сделать маску WORD.
    Упаковка и распаковка в программе ПЛК через точку, только в байте 8 бит, а в регистре 16 бит
    например упаковка Mask.0:=b0; Mask.1:=b1; Mask.2:=b3; и т. д. или распаковка b0:=Mask.0; b1:=Mask.1; b2:=Mask.2; и т. д.

    А вот в панели нет байт, соответственно обращение ко всем 16 битам будет в одном WORD, например 4х0 бит 0, 4х0 бит 1 ...... 4х0 бит 15

    С байтами в ПЛК, у вас получится, 1 байт - биты с 0 по7 и 2 байт - биты с 0 по 7, а в панели регистр с битами с 0 по 15
    Чтобы не путаться и написал сделайте WORD, например упаковали бит 10 (Mask.10:=b10)
    и получили в панели 10 бит (4х0 бит 10)
    Последний раз редактировалось kondor3000; 24.08.2023 в 22:26.

  10. #9860

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    Упаковка и распаковка в программе ПЛК через точку, только в байте 8 бит, а в регистре 16 бит
    например упаковка Mask.0:=b0; Mask.1:=b1; Mask.2:=b3; и т. д. или распаковка b0:=Mask.0; b1:=Mask.1; b2:=Mask.2; и т. д.
    Упаковка и распаковка это про создание WORD из двух BYTE и наоборот?

    А каким образом мне присвоить каждому выходу QB7.10 ... QB7.17 значения из COMPRESSORS[1]? Неужели вручную писать %QB7.10 := COMPRESSORS[1].bSignal12;...

    То есть как мне проитерировать выходы чтобы в цикле их заполнить?
    Или как привязать COMPRESSORS[1..7] OF COMPRESSOR к выходам QB7.xxx
    Последний раз редактировалось senkos; 24.08.2023 в 22:39.

Страница 986 из 1052 ПерваяПервая ... 4868869369769849859869879889961036 ... ПоследняяПоследняя

Метки этой темы

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •