Вот еще второй пункт из инструкции
Вложение 40518
.
Вид для печати
Вот еще второй пункт из инструкции
Вложение 40518
.
Надо было спросить как сбросить к заводским установкам (вдруг, пока пытались подключиться, сбился какой-то параметр), и главное тип и адреса регистров. Контрольные суммы от них толку ноль, я вообще не понимаю зачем их прикладывают в инструкциях китайцы, CRC программы и приборы считают, Вам не нужно забивать этим голову.
01 03 00 00 00 01 84 0A и 01 03 00 00 00 02 C4 0B
Пробовали ?
Если прибор отвечает, что не верный адрес регистра, значит скорость и адрес правильные.
А вот прошерстить ПО ДРУГИМ адресам регистров не помешает, вдруг там реально прошивка другая...
ну и че вы тыкаете запрос количества регистров НОЛЬ ? вам прибор честно отвечает, прочитал ноль регистров...
Внимательнее мои запросы посмотрите, прежде чем тут крупно что-то выкладывать.
Левая половина снимка.
Строка 1
Строка 2
.
Ответы на эти запросы на правой половине снимка.
Строка 1 и строка 2.
По времени 13:33:32.988 (13:33:32.990)
и 13:34:17.598 (13:34:17.600)
Попробуйте модбас сервером Лектус
Загрузите программку 123 Вложение 40525
Вложение 40526
Вложение 40528
Установите номер СОМ порта . Скорость .Там легко меняются номера регистров
можно по одному можно группой в логе все видно .
Легко проводить эксперименты --менять регистры видеть ответы
и не нужно подсчитывать сумму
Можно считать сразу два регистра температуру и влажность .
Ответ из примера DataN/10
Part of Data Package Description Value
01 Slave address 0x01 (1)
03 Function code 0x03 (3) - Read Holding Registers
04 Byte count 0x04 (4)
00 EA 02 95 Register value 0x00EA (234), 0x0295 (661) - 23,4 температура, 66,1 - влажность
Ответ 4 байта температура и влажность групповой запрос на два регистра .
profilirovanie.ru тогда скорее всего у вас в датчике другие регистры, не те, которые заявили в документации. Возможно другая прошивка.
сорри, зрение уже не то... я на ваши стрелочки смотрел :)
Я так думаю, что реально что то поменял в этом датчике. Я этот датчик мучаю уже с сентября, а с октября очень плотно мучаю, мог что то и поменять (перепрошить).
Но при разборе датчика никаких кнопок "reset" или джемперов не нашёл.
P.S. такого бардака как в протоколе MODBUS я вообще не припоминаю. Даже прошивка для модемов с их кривыми протоколами давалась гораздо легче. Вчера пытался выложить данные в OwenClowd и что! Оказалось, что если у вас данные переходят через 2^16, то будет полная ерунда (либо до 65... нормально либо после 65... нормально) и нужно тогда использовать сразу переменную float. И это выяснилось только методом тыка через 2 часа. Старший байт вперед, старший байт нормально. Ужас какой то. В ПР200 так, а в ПЕ210 в OwenClowd наоборот. Ведь производитель оборудования один, неужели нельзя было их стандартизировать (но я подозреваю, что это все идет от старого оборудования - для их поддержки).
С OwenClowd тоже кошмар. Все данные на одном графике и никак нельзя разделить. А если у меня на выход 36 переменные и как объединить температуру 26 градусов и моточасы в 72000 часов? Да никто из клиентов не будет их переформатировать под нужные им визуальные графики. Уж такого подвоха я вообще не ожидал. В приборе ПЕ210-230 ставишь "только чтение". После соединения c OwenClowd запись (права доступа) в ПЕ210-230 снова меняется на полный доступ! Это что за чушь! Пароль не устанавливается (он физически не хочет устанавливаться на ПЕ210).
.
С учетом того, что прошивки и сайты в основной своей массе легко взламываемые, оставлять полный доступ к оборудованию через интернет - это смерти подобно. Ладно у меня полив, вентиляторы и температура, а ведь у кого то это котельная у которой поменять температуру и привет авария.
.
Всем приятного праздника. Сегодня рождество!
Вложение 40532
.
Алексеев, спасибо за программку, но ПЕ210 вывел на интернет (передаёт данные в OwenClowd), а COM порт который китайский с RS485 на USB - боюсь что глючный. Я все ваши файлики и скриншоты сохранил, сегодня обязательно попробую.
Но в успешности результата не уверен.
Отчитаюсь после обеда, сегодня.
ну смотрите, допустим с настройками все верно, программно проверить все теоретически возможные регистры займет примерно 22 секунды, чтоб найти по какому адресу лежат эти "злополучные" температура и влажность. Положение байт это всего четыре комбинации, то что ушло два часа это просто отсутствие опыта. С облаком тоже кучу решений можно найти, например можно каждую переменную отдельным кaнaлом оформить. Это же диспетчиризация а не управление программной логикой, тут высокая скорость не нужна. По поводу взломов, то что описали это диверсия, а не экономическая выгода, есть куда более примитивные средства для этого чем трата ресурсов на вскрытие трафика
Я задал вопрос
http://www.owen.ru/forum/showthread.php?t=25821&page=74
на что был получен ответ
Вложение 40534
Это о том, как приходится до всего доходить самостоятельно. Вот Вы знаете, как это можно реализовать (несколько графиков), я не смог. После чего задал вопрос на форум в поддержку и мне дали ответ - никак.
Если сможете раскрыть секрет, как каждую переменную отдельным каналом оформить, был бы очень признателен.
Но все данные идут с одного устройства (ПР200) и через один интернет шлюз (ПЕ210-230).
Китайские товарищи прислали ответ
Dear friend
As fro the reset: please open the external case, make the JP1 short circuit, then power on again.
0 is the broadcast address. If the customer forgets the address, the old address 0 can be used to reset the new address.
best regards
Дорогой друг
Как сделать Сброс: пожалуйста, откройте внешний корпус, сделайте JP1 короткого замыкания, затем снова включи питание.
0-адрес вещания. Если клиент забывает адрес, старый адрес 0 может быть использован для сброса нового адреса.
Наилучшие пожелания
Итак, получил ответ. По фото ранее нашел JP1 (левый верхний угол) у которого 5 контактов.
Я так понимаю, что я должен их все 5 штук замкнуть, но при это прибор должен быть полностью отсоединён от сети (от всех 4-х проводов)?
После чего я включаю прибор снова в сеть.
Вопрос, а смысл замыкать контакты, если питания нет?
или я их корочу (замыкаю 5 контактов), включаю питание, затем через 3 секунды выключаю питание и происходит сброс настроек?
.
Вряд ли все. и может быть не JP1 а даже JP2, но это надо изучать схему обвязки чипа.
Имеется ввиду при какой-то перемычке включить питание.
Поменял.
Разбираюсь дальше.
Вот что пишет.
Вложение 40542
.
11:44:06.061 [6360] (COM2)Tx: [8] 01 03 00 00 00 02 C4 0B
11:44:08.061 [6360] Ошибка: устройство не отвечает (COM2 Адрес:1)
11:44:10.061 [6360] (COM2)Tx: [8] 01 03 00 00 00 02 C4 0B
11:44:12.063 [6360] Ошибка: устройство не отвечает (COM2 Адрес:1)
Да, присутствует. Фото в посте выше.
Но толку 0.
Китайская программа уже не говорит, что все ОК.
Пишет - ошибка.
Вложение 40543
А затем сказала ОК на 2 секунды, но результаты не выдала.
Вложение 40544
.
Так что китайский USB преобразователь в rs485 явно глючит.
Уберите галочку группового запроса .
Если вы выполнили рекомендации китайцев адрес может быть 0 измените адрес .
Вложение 40545
в свойстве узла . В свойстве регистров можно менять адреса регистров по умолчанию были 0 ,1
Если вы в свойстве регистра укажете галочку запись то в этот регистр можно будет записывать командой 6 как у китайцев .
Не могла ли поменяться скорость вместе с адресом ?????
В общем нужно подключаться к ПЕ210-230
китайский вообще не фурычит.
В общем, сдался.
Корочу 5 выходов на плате.
Затем попробую подключится через ПЕ210
5 выходов не надо коротить, а то это может оказаться и JTAG для прошивки МК. а вы их коротнете все... просто спалите к чертям датчик.
После выполнения рекомендаций китайцев OLD адрес 0 его с помощью программы поменять на допустим на 1 .
Вообще то сброс у них стандартный нажимаешь ( каратишь ) тот джампер который в рекомендации и подаешь питание .
Подключил через ПЕ210.
пошли цифры как и раньше.
Вложение 40546
.
Теперь идут следующие ответы (пока не коротил)
12:16:32.065 [3100] Ошибка приема/передачи (COM2 Адрес:1)
12:16:34.049 [3100] (COM2)Tx: [8] 01 03 00 00 00 02 C4 0B
12:16:34.064 [3100] (COM2)Rx: [5] 01 83 02 C0 F1
12:16:34.064 [3100] Ошибка приема/передачи (COM2 Адрес:1)
12:16:36.048 [3100] (COM2)Tx: [8] 01 03 00 00 00 02 C4 0B
12:16:36.064 [3100] (COM2)Rx: [5] 01 83 02 C0 F1
12:16:36.064 [3100] Ошибка приема/передачи (COM2 Адрес:1)
Убрал галочку - групповой запрос. Получил вот это
12:18:04.140 [3100] Ошибка приема/передачи (COM2 Адрес:1)
12:18:06.061 [3100] (COM2)Tx: [8] 01 03 00 00 00 01 84 0A
12:18:06.077 [3100] (COM2)Rx: [7] 01 03 02 00 00 B8 44
12:18:06.124 [3100] (COM2)Tx: [8] 01 03 00 01 00 01 D5 CA
12:18:06.139 [3100] (COM2)Rx: [5] 01 83 02 C0 F1
.
Читайте по одному регистру увеличивая номер регистра. Вам прибор говорит НЕТ у него такого регистра, этот ответ посылает именно датчик и никто другой.
Эфимерный конь в вакууме в ответ не умеет ничего посылать
Можно еще попробовать считать не 2 а 4Вложение 40548
байта по адресу регистра 0
Итак, по порядку.
Если сделать вот так
Вложение 40549
получим вот так
12:49:12.070 [1112] Ошибка: устройство не отвечает (COM2 Адрес:0)
12:49:14.053 [1112] (COM2)Tx: [8] 00 03 00 00 00 01 85 DB
12:49:16.069 [1112] Ошибка: устройство не отвечает (COM2 Адрес:0)
Если адрес 2
Вложение 40550
то получаем
12:50:28.457 [1112] Ошибка: устройство не отвечает (COM2 Адрес:2)
12:50:30.049 [1112] (COM2)Tx: [8] 02 03 00 00 00 01 84 39
12:50:32.078 [1112] Ошибка: устройство не отвечает (COM2 Адрес:2)
12:50:34.058 [1112] (COM2)Tx: [8] 02 03 00 00 00 01 84 39
Кстати, я коротнул 2 кантакта (самых нижних)
получилось те же 13,4 RH и -1614 чего то
Если сделать адрес 3
Вложение 40551
то получаем вот это
2:51:45.075 [5276] КЛИЕНТ ЗАПУЩЕН
12:51:45.621 [1112] (COM2)Tx: [8] 03 03 00 00 00 01 85 E8
12:51:47.642 [1112] (COM2)Tx: [8] 03 03 00 00 00 01 85 E8
12:51:49.643 [1112] Ошибка: устройство не отвечает (COM2 Адрес:3)
12:51:52.050 [1112] (COM2)Tx: [8] 03 03 00 00 00 01 85 E8
12:51:54.050 [1112] Ошибка: устройство не отвечает (COM2 Адрес:3)
12:51:56.055 [1112] (COM2)Tx: [8] 03 03 00 00 00 01 85 E8
12:51:56.305 [5276] ClientList.Clear