Segnetics

Вернуться   Segnetics > Форум Segnetics > Песочница

Песочница Удалённые с форума темы

Ответ
 
Опции темы Поиск в этой теме
Старый 05.07.2021, 13:21   #1
starmos
Senior Member
 
Регистрация: Jan 2013
Сообщения: 730
Благодарил(а): 22 раз(а)
Поблагодарили: 13 раз(а) в 12 сообщениях
По умолчанию Неизвестная ошибка

Возникает при попытке прошить прилагаемый проект. Хотелось бы знать что это и почему.

Последний раз редактировалось Arsie, 17.08.2023 в 13:40
starmos вне форума   Ответить с цитированием
Старый 05.07.2021, 15:40   #2
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 331
Благодарил(а): 0 раз(а)
Поблагодарили: 255 раз(а) в 251 сообщениях
По умолчанию Ответ: Неизвестная ошибка

Попробовал загрузить, посмотрел логи. Превышено количество запросов, нужно оптимизировать это количество. То что ошибка не расшифровалась - зафиксировал. #44327


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. сейчас на форуме   Ответить с цитированием
Старый 05.07.2021, 15:44   #3
starmos
Senior Member
 
Регистрация: Jan 2013
Сообщения: 730
Благодарил(а): 22 раз(а)
Поблагодарили: 13 раз(а) в 12 сообщениях
По умолчанию Ответ: Неизвестная ошибка

Цитата:
Сообщение от Ilya J. Посмотреть сообщение
Попробовал загрузить, посмотрел логи. Превышено количество запросов, нужно оптимизировать это количество. То что ошибка не расшифровалась - зафиксировал. #44327
Каких запросов много? Много в единицу времени? Или вообще много переменных? Что можно сделать, если все имеющиеся переменные мне нужны?
starmos вне форума   Ответить с цитированием
Старый 05.07.2021, 16:04   #4
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 331
Благодарил(а): 0 раз(а)
Поблагодарили: 255 раз(а) в 251 сообщениях
По умолчанию Ответ: Неизвестная ошибка

https://forum.segnetics.com/showthread.php?t=2044

В вашем проекте можно уменьшить количество запросов, "поигравшись" с адресами или организовав циклический опрос.


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. сейчас на форуме   Ответить с цитированием
Благодарность от:
Старый 05.07.2021, 20:19   #5
LordN
Senior Member
 
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 4 157
Благодарил(а): 240 раз(а)
Поблагодарили: 165 раз(а) в 157 сообщениях
По умолчанию Ответ: Неизвестная ошибка

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


__________________
C уважением, LordN
LordN сейчас на форуме   Ответить с цитированием
Старый 06.07.2021, 11:34   #6
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 331
Благодарил(а): 0 раз(а)
Поблагодарили: 255 раз(а) в 251 сообщениях
По умолчанию Ответ: Неизвестная ошибка

Цитата:
Сообщение от LordN Посмотреть сообщение
для уменьшения числа запросов часто бывает выгодно задавать "пустые" адреса, но только если слейв на них тупить не будет.
Не проще в таком случае свой групповой опрос организовать?


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. сейчас на форуме   Ответить с цитированием
Старый 06.07.2021, 12:02   #7
starmos
Senior Member
 
Регистрация: Jan 2013
Сообщения: 730
Благодарил(а): 22 раз(а)
Поблагодарили: 13 раз(а) в 12 сообщениях
По умолчанию Ответ: Неизвестная ошибка

Уменьшение числа запросов помогло, объект удалось запустить почти в полном объеме, 1 кондиционер не влез. Уменьшить число запросов удалось именно путем введения "пустых" адресов. И тут хотелось бы отметить, что было бы неплохо иметь возможность отключать чтение для переменных R/W. Иногда достаточно просто записать, а запросы при этом все равно тратятся. Если запросы записи идут в каждом цикле, то даже при потере одного пакета = запишется в следующий раз. Конечно это не везде подойдет, но было бы хорошо, чтобы разработчик мог выбирать, надо ему последующее чтение, или нет.
Ну и хотелось бы уточнить, если я выбираю нециклический опрос, как у меня экономятся запросы? Например 2 кондиционера = 18 запросов в сумме. Но если я нециключеским образом опрашиваю их попеременно, по таймеру например, у меня получается 9 запросов и 9 экономится?
starmos вне форума   Ответить с цитированием
Старый 06.07.2021, 12:11   #8
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 086
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Неизвестная ошибка

Цитата:
Сообщение от starmos Посмотреть сообщение
Ну и хотелось бы уточнить, если я выбираю нециклический опрос, как у меня экономятся запросы?
Нет. Буфер же выделяется.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 06.07.2021, 12:17   #9
LordN
Senior Member
 
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 4 157
Благодарил(а): 240 раз(а)
Поблагодарили: 165 раз(а) в 157 сообщениях
По умолчанию Ответ: Неизвестная ошибка

Цитата:
Сообщение от Ilya J. Посмотреть сообщение
Не проще в таком случае свой групповой опрос организовать?
а как это сделать, если слейв со своей жестко прошитой картой регистров и ты никак на неё повлиять не в состоянии?
взять тот же VLT51 у него меж регистрами промежуток в десятку, благо он ошибками не сыпет когда обращаешься по "несуществующему" адресу, тогда можно сделать одним запросом почти 50 регистров, это конечно не 512, но тоже хлеб..


Добавлено через 1 минуту


Цитата:
Сообщение от Arsie Посмотреть сообщение
Нет. Буфер же выделяется.
ого.
а я-то по наивности думал, что карта, без выложенных на поляну регистров, в процессе не участвует...


Добавлено через 4 минуты


Цитата:
Сообщение от starmos Посмотреть сообщение
Уменьшение числа запросов помогло, объект удалось запустить почти в полном объеме, 1 кондиционер не влез. Уменьшить число запросов удалось именно путем введения "пустых" адресов. И тут хотелось бы отметить, что было бы неплохо иметь возможность отключать чтение для переменных R/W. Иногда достаточно просто записать, а запросы при этом все равно тратятся. Если запросы записи идут в каждом цикле, то даже при потере одного пакета = запишется в следующий раз. Конечно это не везде подойдет, но было бы хорошо, чтобы разработчик мог выбирать, надо ему последующее чтение, или нет.
Ну и хотелось бы уточнить, если я выбираю нециклический опрос, как у меня экономятся запросы? Например 2 кондиционера = 18 запросов в сумме. Но если я нециключеским образом опрашиваю их попеременно, по таймеру например, у меня получается 9 запросов и 9 экономится?
более того, часть слейвов имеют регистры только для записи и при попытке его чтения возвращают ошибку или еще хуже - тупят и подвисают.. я тоже за то чтоб разделить сущности, либо ввести вариабельность чтение, запись, запись/чтение да еще и с выбором очередности.
частенько нужно сперва прочесть, потом обработать, и только потом уже записать в тот же регистр что-то другое


__________________
C уважением, LordN
LordN сейчас на форуме   Ответить с цитированием
Старый 06.07.2021, 12:26   #10
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 086
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Неизвестная ошибка

Цитата:
Сообщение от LordN Посмотреть сообщение
частенько нужно сперва прочесть, потом обработать, и только потом уже записать в тот же регистр что-то другое
Это без проблем. R(out) к вашим услугам.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 06.07.2021, 12:30   #11
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 331
Благодарил(а): 0 раз(а)
Поблагодарили: 255 раз(а) в 251 сообщениях
По умолчанию Ответ: Неизвестная ошибка

Цитата:
Сообщение от LordN Посмотреть сообщение
а как это сделать, если слейв со своей жестко прошитой картой регистров и ты никак на неё повлиять не в состоянии?
взять тот же VLT51 у него меж регистрами промежуток в десятку, благо он ошибками не сыпет когда обращаешься по "несуществующему" адресу, тогда можно сделать одним запросом почти 50 регистров, это конечно не 512, но тоже хлеб..
https://dl.segnetics.com/WebHelp/SML...odbus_vars.htm

Попробовать реализовать нециклический опрос с объединением переменных в группу.

Цитата:
ого.
а я-то по наивности думал, что карта, без выложенных на поляну регистров, в процессе не участвует...
Кстати, об этом много упоминаний на форуме.


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. сейчас на форуме   Ответить с цитированием
Старый 27.07.2021, 12:15   #12
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 331
Благодарил(а): 0 раз(а)
Поблагодарили: 255 раз(а) в 251 сообщениях
По умолчанию Ответ: Неизвестная ошибка

Проблемы не наблюдается в лоджике 3.34, который скоро станет релизным.


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. сейчас на форуме   Ответить с цитированием
Ответ


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

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



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


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