Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 12

Тема: ТРМ138 регистр состояния ВУ

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    По умолчанию ТРМ138 регистр состояния ВУ

    Добрый день. Считывание регистра состояния выходного устройства №5 выдает значение 15360, хотя поидеи должно 1 или 0. Не пойму.
    Нажмите на изображение для увеличения. 

Название:	Безымянный.jpg 
Просмотров:	7 
Размер:	32.7 Кб 
ID:	82527
    Нажмите на изображение для увеличения. 

Название:	WhatsApp Image 2025-03-18 at 11.54.44.jpeg 
Просмотров:	14 
Размер:	257.1 Кб 
ID:	82528
    Нажмите на изображение для увеличения. 

Название:	WhatsApp Image 2025-03-18 at 11.54.45.jpeg 
Просмотров:	14 
Размер:	340.5 Кб 
ID:	82529

  2. #2

    По умолчанию

    Ты читаешь Coil - биты. Они в этом ПЛК читаются сразу по 8 штук. А в регистрах сгруппированы по 16.
    15360 = 0111100 00000000
    То есть, ты читаешь совсем не то и не так. У тебя должна быть команда не "Coils Status", а "Input Registers" или "Holding registers" - читать РЕГИСТРЫ, а не биты.
    Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте. © Steve McConnell
    Мой рабочий блог со статьями про щиты и автоматику ОВЕН - Cs-Cs.Net | Почта: Info@Cs-Cs.Net | Канал в ТГ @CsCsNetLab

  3. #3

    По умолчанию

    Цитата Сообщение от Cs-Cs Посмотреть сообщение
    Ты читаешь Coil - биты. Они в этом ПЛК читаются сразу по 8 штук. А в регистрах сгруппированы по 16.
    15360 = 0111100 00000000
    То есть, ты читаешь совсем не то и не так. У тебя должна быть команда не "Coils Status", а "Input Registers" или "Holding registers" - читать РЕГИСТРЫ, а не биты.
    Пробовал, все равно показывает не то, при "Input Registers" показало 60629. При "Holding registers" не реагирует.

  4. #4

    По умолчанию

    Так, я тоже лох. Вижу скриншот из инструкции.
    Пробуем ещё раз. CodeSys 2.3 НЕ умеет читать биты (функция 1) поштучно.
    Может читать только пачкой по 8.
    А в инструкции указано:
    * Функция 1
    * Номера битов с 0 по 7 (то есть 8 всего)

    Я бы попробовал так:
    * Добавить "8 bit input module"
    * Команда 0x01 Read Coils Status
    * Адрес = 0 (читаем с 0 по 7)
    И посмотреть, что будет. По идее это будет битовая маска ВУ с 1 по 8.
    А оттуда уже выделить статус нужного через точку (обратитьс к биту).
    Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте. © Steve McConnell
    Мой рабочий блог со статьями про щиты и автоматику ОВЕН - Cs-Cs.Net | Почта: Info@Cs-Cs.Net | Канал в ТГ @CsCsNetLab

  5. #5

    По умолчанию

    Цитата Сообщение от Cs-Cs Посмотреть сообщение
    Так, я тоже лох. Вижу скриншот из инструкции.
    Пробуем ещё раз. CodeSys 2.3 НЕ умеет читать биты (функция 1) поштучно.
    Может читать только пачкой по 8.
    А в инструкции указано:
    * Функция 1
    * Номера битов с 0 по 7 (то есть 8 всего)

    Я бы попробовал так:
    * Добавить "8 bit input module"
    * Команда 0x01 Read Coils Status
    * Адрес = 0 (читаем с 0 по 7)
    И посмотреть, что будет. По идее это будет битовая маска ВУ с 1 по 8.
    А оттуда уже выделить статус нужного через точку (обратитьс к биту).
    Спасибо попробую. По мануалу имеем код функции 01/05 и адрес регистра 0x0004. Я не думал, что все не так просто.

  6. #6

    По умолчанию

    Цитата Сообщение от РусланСемей Посмотреть сообщение
    Спасибо попробую. По мануалу имеем код функции 01/05 и адрес регистра 0x0004. Я не думал, что все не так просто.
    Это вообще то не адреса регистров, а адреса бит с 0 по 7 и всё это в 0 регистре. Вы вообще не тот регистр читаете по ходу.

  7. #7

    По умолчанию

    Мне кажется все правильно. Просто надо извлечь младший бит и всё.
    Нажмите на изображение для увеличения. 

Название:	Owen.jpg 
Просмотров:	9 
Размер:	142.5 Кб 
ID:	82530

  8. #8

    По умолчанию

    Цитата Сообщение от EFrol Посмотреть сообщение
    Мне кажется все правильно. Просто надо извлечь младший бит и всё.
    Нажмите на изображение для увеличения. 

Название:	Owen.jpg 
Просмотров:	9 
Размер:	142.5 Кб 
ID:	82530
    Спасибо тоже попробую

  9. #9

    По умолчанию

    вот что получается. Настроено на ВУ номер 5
    Нажмите на изображение для увеличения. 

Название:	45.jpg 
Просмотров:	12 
Размер:	51.0 Кб 
ID:	82532

  10. #10

    По умолчанию

    Цитата Сообщение от РусланСемей Посмотреть сообщение
    вот что получается. Настроено на ВУ номер 5
    Нажмите на изображение для увеличения. 

Название:	45.jpg 
Просмотров:	12 
Размер:	51.0 Кб 
ID:	82532
    Похоже на правду, адрес 0 поставили?
    Проблема может быть в записи, тут нет функции 0х05, есть только 0х0f. Вопрос будет ли записываться.

Страница 1 из 2 12 ПоследняяПоследняя

Похожие темы

  1. Как записать значение состояния кнопки в регистр MODBUS
    от arty в разделе Среда программирования OWEN Logic
    Ответов: 7
    Последнее сообщение: 21.11.2023, 14:02
  2. 540 регистр макбрас
    от 55000000 в разделе Среда программирования OWEN Logic
    Ответов: 3
    Последнее сообщение: 23.11.2020, 20:03
  3. Упаковка бит в регистр.
    от Newcomer в разделе Среда программирования OWEN Logic
    Ответов: 9
    Последнее сообщение: 24.05.2020, 17:11
  4. морской регистр
    от Никадимов в разделе Трёп (Курилка)
    Ответов: 1
    Последнее сообщение: 01.11.2012, 11:11
  5. Регистр сдвига
    от Джемк в разделе Программируемые реле
    Ответов: 7
    Последнее сообщение: 12.10.2012, 16:47

Ваши права

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