bormotov Posted March 3, 2013 Share Posted March 3, 2013 Есть три замечательных сопособа для конфигрурования NPort 5110: NPort Admin Suite, Web Console, Telnet. Еще можно в каком-то настраивать NPort через вызовы IPSerial, но как-то IPSerial API ориентировано на непосредственную работу с NPort'ом из программы, а нам хочется только настройки прошить. Все замечательные способы ориентированы на человека, и не подразумевают полностью автоматическую загрузку конфигурации, самое близкое к желаемому в NPort Admin - Confiration - Import Configuration, когда можно выделить несколько найденых NPort'ов, и в них загрузить одинаковые настройки. Но даже в этом случае, человек должен тыкать мышкой по птичкам и кнопкам. Хотелось бы спецификацию на то, как NPort Admin общается с устройством, это реально? Первое, что попробовал написать скрипт который через web console с помощью curl записывает нужные значения в нужные места, но что-то там не получилось, с двух этапной "прошивкой" в виде Submit на одной странице, а потом "Save/Reboot" на другой. Может быть тут есть какая-то тонкость, и можно обойтись этим способом? Думаю, есть смысл пояснить, зачем нам это нужно. Мы подключаем по несколько десятков разных устройств в рамках одного проекта. Сервер данных у нас примнимает TCP-соединения, устройства в основном Serial (некотоыре умеют tcp - там они напрямую). При подготовке проекта, создается конфигурация сети - какие устройства (NPort'ы) с какими IP-адресами будут, имена, настройки Serial портов (не всегда это 9600-8-N-1, иногда бывает старая экзотика с прошитыми 2400-7-E-2), и всё-всё-всё остальное. Перед монтажем, инженер включает десяток NPort'ов и методично прописывает каждый требуемые значения, маркирует этикетками и так далее. Человек - в данном случае, источник ошибок, несмотря на то, что все они квалифицированные инженеры. Хочется избавиться от этой рутины полностью, избавиться от ошибок и свести ситуацию к следующей: - инженер подключает десяток NPort'ов (хоть по одной, хоть все сразу) - открывает web-консоль нашего конфигуратора, выбирает проект - видит список MAC-адресов найденых в сети NPort'ов, ставит птички на тех, которые нужно сконфигурировать - нажимает на кнопку "сконфигурировать", получает страницу со словами "все удалось", а из принтера набор этикеток, на каждой из которых MAC-адрес и название прибора, как он записан у нас в проекте. - к описанию проекта добавятся MAC-адреса соответсвующих NPort'ов - кому что прошилось. - наклеивает этикетки, устанавливает NPort'ы утопия? мечты? Если компания по каким-либо причинам не может публиковать спецификации протокола общения NPort Admin (это предпочтительнее, чем через web console и темболее telnet) - мы готовы подписать NDA. Если никаких вариантов получить спецификацию нет, прийдется потратить время с tcpdump. Не самое продуктивный путь, но получить желаниемое реально. Link to comment
Komantsev Posted March 7, 2013 Share Posted March 7, 2013 (edited) Добрый день! Ваша задача ясна. Если можно, мы возьмём ещё пару дней на обсуждение возможного решения. Я дам Вам знать по результатам. уточните, пожалуйста, Вы планируете заливать config-файлы из ОС Windows? Edited March 7, 2013 by Komantsev Link to comment
bormotov Posted March 7, 2013 Author Share Posted March 7, 2013 Спасибо большое! Можно конечно столько, сколько нужно. На копание с tcpdump по-любому времени нужно много ;( Windows и Linux обязательно нужны, с вероятностями 40/60. Но лучше всего, если это будет платформонезависимый сопособ. Web-интерфейс-же, работает из любого браузера? И команды по UDP NPort обрабатывает без разницы, откуда их прислали. Будь я более продвинут в использовании web-техноллогий, возможно вопрос-бы не возник вообще. Но мне более низкий уровень ближе, tcpdump помогал не раз, да и людей кто-бы смог автоматизировать хождение по формам web-console рядом нет. Но если будет в каком-то виде формальное описание, по каким url'ям в web-console какие GET/POST делать, в каком порядке, может быть где-то принимать cookie, и кому потом их предъявлять - этого боеле чем устроит. Link to comment
Komantsev Posted March 7, 2013 Share Posted March 7, 2013 Добрый день! Спасибо за уточнения! Просто, если я не ошибаюсь, была у Моксы библиотечка под Windows для залития прошивки из своей программы. Это бы решила проблему с той точки зрения, что не надо было бы открывать протокол передачи данных. Но как обстоят дела с Линуксом - не помню, если честно. Вобщем, уточняю у отдела разработок. Link to comment
bormotov Posted April 2, 2013 Author Share Posted April 2, 2013 готовые бинарные библиотеки, это окунание разработчика в ад зависимостей от системных библиотек и версий компилятора. Боюсь показаться нудным и назойливым, но повторюсь - web-интерфейс работает независимо ни от чего. Наверное по современным меркам, лучше всего был бы REST-api для доступа через web. Это знают и умеют все. Это не требует ничего, кроме умения польвоаться протоколом http, для которого удобные реализации есть уже в любом средстве разработки. Но в крайнем случае, даже бы устроило более-менее формальное описание, в по какому URL в web-консоли что делать POST, где ккие куки нужно принять (если нужно), и так далее. Link to comment
TIM85 Posted June 17, 2016 Share Posted June 17, 2016 Добрый день! Народ кто подключал MOXA NPort 5130 к zabbix 2.4.8? Интересует шаблон Link to comment
Denis S. Posted July 29, 2019 Share Posted July 29, 2019 Здравствуйте! Есть ли какие-то результаты по данному вопросу? Необходимо скриптом изменить адрес TCP сервера на больом количестве конвертеров. Link to comment
Незнайка Posted July 29, 2019 Share Posted July 29, 2019 Добрый день! А через telnet скриптом поменять не получится? Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now