PDA

Просмотр полной версии : Обнуление счетчика МВ110-16ДН



nestor
09.01.2013, 11:14
Доброе время суток. Возникла проблема при программировании ПЛК304, не могу записать значение счетчика. Точнее записывается через раз и что то непонятное. В руководстве в МВ110-16ДН сказано, что регистры записываются функцией 16, я так понял нужно использовать ФБ MB_WR_REGS из библиотеки Modbus, что я и сделал. Из руководства не совсем ясно, можно ли записывать в значения счетчиков что-то кроме 0, у меня записывался 0 через раз, иногда записывалось непонятное число.
Подскажите как правильно обнулить, а еще лучше записать значение счетчика.

Трофимов Артем
09.01.2013, 12:13
Здравствуйте ,nestor.
Попробуйте использовать ФБ MV110_16D_counter для считывания состояния счётчиков и блок UniWrite для записи значения счётчика в необходимый вам регистр.

nestor
09.01.2013, 13:06
пробовал и этот ФБ, был код ошибки 0xFF

Трофимов Артем
09.01.2013, 13:33
Это код ошибки превышания таймаута ожидания.
По возможности прикрепите проект, чтобы дальше разбираться

kgsh82
10.01.2013, 13:33
Светодиод подмигивает? Посмотрите через программу настройки "протокол общения" - вдруг указан "Овен". Также можно подсмотреть что передаётся по сети. Подключить ПК через преобразователь на линию и прослушать каким-нибудь монитором порта

nestor
12.01.2013, 13:33
Всё заработало, даже не пойму в чем дело было, вроде ничего и не поменял. Сначала попробовал UniWrite, но он использует 6-ю функцию, это я посмотрел терминалом, потом снова вернул MB_WR_REGS, посмотрел терминалом - то что нужно отправляет. Подключил МВ и всё заработало, записывает не только 0. Может дело было в следующем: MB_WR_REGS записывает массив, я инициализировал массив только один раз, но заметил, что при работе MB_WR_REGS записывает в этот массив непонятные числа (среди них явно были выражены адрес прибора и адрес регистра), а в последний раз я решил перезаписвыть массив каждый цикл, хотя может это нерационально.

kgsh82
13.01.2013, 09:46
Если не трудно выложите код до и после: интересно посмотреть

nestor
22.01.2013, 14:09
kgsh82, я программирую на CFC, прога большая, если очень надо могу скриншот показать.

И раз уж заговорили об обнулении счетчика, то чтобы не создавать новую тему спрошу тут же - есть какое-то ограничение на число перзаписей (не важно ноль это будет или нет)?

kgsh82
22.01.2013, 17:33
Надо у разработчиков уточнить тип энергонезависимой памяти и отсюда уже плясать. Смею предположить (надеюсь), что срок службы памяти больше чем у модуля в целом.

nestor
23.01.2013, 08:50
Я тоже думаю, что однозначный ответ могут дать только разработчики, почему то эти данные не отражены в руководстве.

nestor
23.01.2013, 09:18
Собственно, ответил на свой вопрос, сняв крышку прибора - стоит PIC18F4520 с EEPROM 256кБ. Судя по всему я могу не беспокоится))

Theyler
11.08.2018, 16:21
В CoDeSys v3.5 считывание счётчика производится просто - в переменную, присвоенную в модуле.
Например, у меня она CurrentWaterHall1. Тут всё отлично.

Если я правильно понимаю, то запись в ячейку производится с помощью присвоения значения и переключения триггера записи (у меня соответственно переменные NewWaterHall1 и WriteTrigger1).
В переменную NewWaterHall1 := 0; //Или какое нужно значение
В переменную WriteTrigger1 := TRUE;
Но ничего не получается.

Подскажите, пожалуйста, как работать с этими параметрами.
38343