Segnetics

Вернуться   Segnetics > Форум Segnetics > Связь с внешним миром

Связь с внешним миром Modbus, RS232, RS485, Lon и другое.

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 22.03.2011, 10:44   #1
zev_
Senior Member
 
Регистрация: May 2010
Сообщения: 152
Благодарил(а): 0 раз(а)
Поблагодарили: 6 раз(а) в 4 сообщениях
По умолчанию что я делаю не так?

пытаюсь связать smc с расходомером взлет эм. связь работает - статистика в расходомере показывает что все нормально.. далее проблема.. к примеру переменная логическая 400002 следовательно физическая 1h. пытаюсь считать показатели - выход 0 (хотя должно быть 4.. скорость обмена) хотя запись в эту переменную проходит корректно.. в настройках взлета показатели меняются...
существует ли разница в записи и чтении переменных ( кроме in, in/out)
zev_ вне форума   Ответить с цитированием
Старый 22.03.2011, 11:55   #2
Sergey Cherevko
Senior Member
 
Аватара для Sergey Cherevko
 
Регистрация: Jul 2007
Адрес: Калининград
Сообщения: 422
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: что я делаю не так?

Поскольку у Вас адрес 40002, значит читаете из holding registers, значит надо задать R(out). Для записи туда же - RW(out).


__________________
Автомат АК - самый распространенный преобразователь стека в очередь
Sergey Cherevko вне форума   Ответить с цитированием
Старый 22.03.2011, 12:19   #3
zev_
Senior Member
 
Регистрация: May 2010
Сообщения: 152
Благодарил(а): 0 раз(а)
Поблагодарили: 6 раз(а) в 4 сообщениях
По умолчанию Ответ: что я делаю не так?

на сколько я понял так? во вложении.. результат тот же
Вложения
Тип файла: psl Untitled.psl (2.0 Кбайт, 92 просмотров)
zev_ вне форума   Ответить с цитированием
Старый 22.03.2011, 13:23   #4
Sergey Cherevko
Senior Member
 
Аватара для Sergey Cherevko
 
Регистрация: Jul 2007
Адрес: Калининград
Сообщения: 422
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: что я делаю не так?

Да, так.
Если не работает - надо смотреть.
1. "Нижняя" переменная имеет вход записи и выход контрольного чтения. Что у нее на выходе?
2. Добавил блок диагностики связи. Что на выходах этого блока?
3. Если совсем никак, то подлючиться "слушалкой" к порту 1 контроллера и перехватить обмен с Взлетом...
Вложения
Тип файла: psl Untitled[1].psl (3.5 Кбайт, 66 просмотров)


__________________
Автомат АК - самый распространенный преобразователь стека в очередь
Sergey Cherevko вне форума   Ответить с цитированием
Старый 22.03.2011, 13:33   #5
Nick
Сотрудник Segnetics
 
Аватара для Nick
 
Регистрация: Feb 2010
Сообщения: 132
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: что я делаю не так?

поставьте на поляну хоть бы один какой нибудь AND, у вас циклическая программа пуста. Я честно говоря даже не знаю , что делает контроллер при отсутствии самой программы.

потом посмотрите, при активном мастере на порту в SMH2010, должен моргать светодиод соответствующего порта, сие означает, что контроллер запросы модбас отправляет.

потом, при наличии переменной RW, нет необходимости делать в тот же адрес еще и переменную на чтение холдинг регистра.
Nick вне форума   Ответить с цитированием
Старый 22.03.2011, 13:44   #6
zev_
Senior Member
 
Регистрация: May 2010
Сообщения: 152
Благодарил(а): 0 раз(а)
Поблагодарили: 6 раз(а) в 4 сообщениях
По умолчанию Ответ: что я делаю не так?

при изменении входа в блоке r/w(out) выход меняется, но на блоке r(out) могут поменяться а могут нет... чаще не меняются.. добавил пустой add - разницы нет
Миниатюры
Нажмите на картинку для увеличения

Название:  1.JPG
Просмотров: 117
Размер:  108.8 Кбайт  
zev_ вне форума   Ответить с цитированием
Старый 22.03.2011, 13:47   #7
zev_
Senior Member
 
Регистрация: May 2010
Сообщения: 152
Благодарил(а): 0 раз(а)
Поблагодарили: 6 раз(а) в 4 сообщениях
По умолчанию Ответ: что я делаю не так?

обмен идет, так как взлет в статистике показывает принятые пакеты.. ошибок о..
zev_ вне форума   Ответить с цитированием
Старый 22.03.2011, 14:08   #8
Nick
Сотрудник Segnetics
 
Аватара для Nick
 
Регистрация: Feb 2010
Сообщения: 132
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: что я делаю не так?

вход на RW блоке записывает в слейва командой 10h,
в выход помещается значение вычитанное командой 03h

второй блок на чтение из того же адреса вообще не имеет смысла. боюсь что его запрос может игнорироваться ибо он дублирует тот что уже есть.
Nick вне форума   Ответить с цитированием
Старый 22.03.2011, 14:14   #9
zev_
Senior Member
 
Регистрация: May 2010
Сообщения: 152
Благодарил(а): 0 раз(а)
Поблагодарили: 6 раз(а) в 4 сообщениях
По умолчанию Ответ: что я делаю не так?

хорошо.. убираю полностью rw оставляю r. связь идет... меняю показатель во взлете. а у меня просто 0
zev_ вне форума   Ответить с цитированием
Старый 22.03.2011, 14:19   #10
Sergey Cherevko
Senior Member
 
Аватара для Sergey Cherevko
 
Регистрация: Jul 2007
Адрес: Калининград
Сообщения: 422
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: что я делаю не так?

А в таком варианте "верхняя" переменная нормальные значения читает?
Вложения
Тип файла: psl Untitled[2].psl (3.8 Кбайт, 71 просмотров)


__________________
Автомат АК - самый распространенный преобразователь стека в очередь
Sergey Cherevko вне форума   Ответить с цитированием
Старый 22.03.2011, 14:19   #11
zev_
Senior Member
 
Регистрация: May 2010
Сообщения: 152
Благодарил(а): 0 раз(а)
Поблагодарили: 6 раз(а) в 4 сообщениях
По умолчанию Ответ: что я делаю не так?

нашел касяк.. спасибо за наводку... smc не может иметь в разных запросах одного и того же адреса... оставил только одного с адресом в таблице - все пошло
zev_ вне форума   Ответить с цитированием
Старый 22.03.2011, 14:21   #12
Nick
Сотрудник Segnetics
 
Аватара для Nick
 
Регистрация: Feb 2010
Сообщения: 132
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: что я делаю не так?

есть програмка - прицепил. попробуйте ей поопрашивать "взлет".
Вложения
Тип файла: zip mbpoll.zip (271.9 Кбайт, 76 просмотров)
Nick вне форума   Ответить с цитированием
Старый 22.03.2011, 14:25   #13
Sergey Cherevko
Senior Member
 
Аватара для Sergey Cherevko
 
Регистрация: Jul 2007
Адрес: Калининград
Сообщения: 422
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: что я делаю не так?

Однако если надо постоянно читать и иногда писать, то по-любому придется делать 2 запроса.
Посмотрите пример Untitled[2].psl в моем письме выше.


__________________
Автомат АК - самый распространенный преобразователь стека в очередь
Sergey Cherevko вне форума   Ответить с цитированием
Старый 22.03.2011, 14:32   #14
zev_
Senior Member
 
Регистрация: May 2010
Сообщения: 152
Благодарил(а): 0 раз(а)
Поблагодарили: 6 раз(а) в 4 сообщениях
По умолчанию Ответ: что я делаю не так?

с той программой тот же прикол.. насколько я понял в таблице карты памяти одному адресу может принадлежать только одна запись.. по другому пока не нашел.. наверное можно если что создать второе устройство (его же) и в другой таблице по идее прогатит
zev_ вне форума   Ответить с цитированием
Старый 22.03.2011, 14:34   #15
Nick
Сотрудник Segnetics
 
Аватара для Nick
 
Регистрация: Feb 2010
Сообщения: 132
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: что я делаю не так?

сейчас смоделирую ситуацию. отпишусь , что и как.

а по поводу другого устройства, скорее всего не прокатит. во внутре SMH все устройства представлены, как наборы запросов со своими параметрами, в которые входят адрес слейва, адрес для запроса, количество байтиков и адрес озу, куда эти данные складывать.
Nick вне форума   Ответить с цитированием
Старый 22.03.2011, 14:41   #16
Nick
Сотрудник Segnetics
 
Аватара для Nick
 
Регистрация: Feb 2010
Сообщения: 132
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: что я делаю не так?

и еще, если в мбполл тот же прикол, то может этот прикол в взлете. и в нем разделяются данные на те что мы прописываем через модбас в адрес 2 и данные которые мы меняем через уставки самого прибора.
Nick вне форума   Ответить с цитированием
Старый 22.03.2011, 15:48   #17
zev_
Senior Member
 
Регистрация: May 2010
Сообщения: 152
Благодарил(а): 0 раз(а)
Поблагодарили: 6 раз(а) в 4 сообщениях
По умолчанию еще вопрос чайника

логический 449349 (физический 49348) вещественное - читать long или integer со смешением на+1
zev_ вне форума   Ответить с цитированием
Старый 22.03.2011, 16:31   #18
Nick
Сотрудник Segnetics
 
Аватара для Nick
 
Регистрация: Feb 2010
Сообщения: 132
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: что я делаю не так?

смоделировал.
проект слейва на пикселе с адресом 1. холдинг по адресу 2.
проект мастера на 2010 с адресом 0. запрос холдинга и запись его в адрес 2 на пикселе.
при изменении значения на мастере , записывается а потом и считывается из слейва обеими блоками корректно. так что наличие 2х блокв некритично.

как работает взлет , извините , я немного не в курсе, и попробывать не на чем
Миниатюры
Нажмите на картинку для увеличения

Название:  картинка.JPG
Просмотров: 96
Размер:  14.7 Кбайт  
Вложения
Тип файла: psl slv.psl (5.2 Кбайт, 53 просмотров)
Тип файла: psl mas.psl (2.2 Кбайт, 45 просмотров)
Nick вне форума   Ответить с цитированием
Старый 22.03.2011, 16:52   #19
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: что я делаю не так?

Цитата:
Сообщение от Nick
смоделировал.
проект слейва на пикселе с адресом 1. холдинг по адресу 2.
проект мастера на 2010 с адресом 0. запрос холдинга и запись его в адрес 2 на пикселе.
при изменении значения на мастере , записывается а потом и считывается из слейва обеими блоками корректно. так что наличие 2х блокв некритично.
Подтверждаю, можно намешивать адреса и слейвы в любом порядке. По крайней мере на версиях 3.19 и ранее это работало беспрекословно.

А как сейчас проверил Ник - на 3.23 версии всё в силе.

По поводу "взлёта" - нужно мониторить трафик в сети, есть вероятность, что контроллер слишком часто опрашивает этот прибор и поэтому часть запросов теряется. С точки зрения "взлёта" при этом всё будет в порядке.

Также нужно применить блок Device (link) в программе - он покажет статистику связи с точки зрения нашего контроллера.


.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

BB code is Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Почему техподдержка не может ответить на мой простейший вопрос? Arsie ЧаВо - Часто задаваемые Вопросы 6 23.11.2018 11:26
Что делаю не так? starmos Вопросы о Trim5 1 31.10.2018 12:07
Logix: Работа на порту невозможна Arsie ЧаВо - Часто задаваемые Вопросы 0 09.06.2018 11:51
Использование USB-хаба Varnak Вопросы о SMH-2G(i) 8 01.03.2013 12:20


Часовой пояс GMT +4, время: 23:44.


Версия vBulletin: 3.8.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Segnetics 2005 - 2023