реклама на сайте
подробности

 
 
5 страниц V   1 2 3 > »   
Reply to this topicStart new topic
> Ex "Пинговалка", Вынесено из "Владеем небольшой сеткой"
Mihail Gluhowche...
сообщение Jan 12 2009, 02:52
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 732
Регистрация: 24-01-07
Из: Novosibirsk
Пользователь №: 24 710



Цитата(_Ivan_33 @ Jan 11 2009, 16:20) *
спаять дома 200 плат с заказанными на заводе платами...

евро стоит 42 рубля а доллар 30... давайте вообще перейдем на золото, оно никогда не подешевеет

Здрасте у золота не цена а курс smile.gif)) Экономика батенька. Недавно оно стоили 250 за унцию smile.gif

Реально на BF532 но только в партии 10000 штук они тогда по 5.32 smile.gif
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jan 12 2009, 08:17
Сообщение #2


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Реально на BF532 но только в партии 10000 штук они тогда по 5.32


Вы, видимо, кроме BF других камней не знаете? Не говоря уже о том, сколько будет стоить его запаять wink.gif


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Mihail Gluhowche...
сообщение Jan 12 2009, 09:21
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 732
Регистрация: 24-01-07
Из: Novosibirsk
Пользователь №: 24 710



Знаю но все они подороже стоят немного так smile.gif)) А на него встает линукс и все задачи решаются, тоесть разработка софта сводится к простой компиляции uClinux с параметрами + небольшая програмка которая сохраняет /etc в пару разделов флешки. ARM стоит дороже. MIPS редко получалось быстро собрать ядро и запустить переферию.

Сообщение отредактировал Mihail Gluhowchenko - Jan 12 2009, 09:23
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Jan 12 2009, 12:16
Сообщение #4


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Совать сюда Blackfin - это наиболее бредовая идея из всех предложенных.
Blackfin-ы одни из самых неэффективных процессоров для сетевых приложений.
Греются как утюги, не технологичный корпус, требуют три разных питания, отсутствие внутренней Flash-и, средства отладки либо дубовые либо дорогие.
В программном плане более глючного решения чем uLinux придумать даже трудно.
Как виснет линукс темы возникают регулярно чуть ли не каждую неделю: http://electronix.ru/forum/index.php?showtopic=57717
Скорее всего такие дивайсы сами будут требовать постоянного наблюдения за собой.

Если нужен один ICMP то это потянет любой микроконтроллер с RAM в объеме до 2Кб еще и операционка поместится.
Это могут быть и AVR-ы и MSP и PIC-и и т.д.
Но рекомендовал бы ARM-ы на ядре Cortex как наиболее продвинутые и позволяющие лучше сохранить инвестиции.
Например STM32F101C6T6 стоит те самые 5$ в партии от 200 шт. и могут с успехом изобразить и ICMP и SMTP и Telnet и все что нужно.

Другое дело что я сильно сомневаюсь, что челу действительно нужен просто пинг.
Никогда дело этим не кончалось.
Когда обнаруживалось что роутеры виснут, клиенты всегда хотели знать почему виснут.
Обычно выдвигаются две версии - плохая температура эксплуатации и плохое питание.
И сразу же встает проблема серьезного мониторинга и другая тема: http://electronix.ru/forum/index.php?showtopic=57061


Цитата(Mihail Gluhowchenko @ Jan 12 2009, 12:51) *
Знаю но все они подороже стоят немного так smile.gif)) А на него встает линукс и все задачи решаются, тоесть разработка софта сводится к простой компиляции uClinux с параметрами + небольшая програмка которая сохраняет /etc в пару разделов флешки. ARM стоит дороже. MIPS редко получалось быстро собрать ядро и запустить переферию.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jan 12 2009, 12:37
Сообщение #5


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Другое дело что я сильно сомневаюсь, что челу действительно нужен просто пинг.
Никогда дело этим не кончалось.


Лично я человеку банальный отвечатель на ICMP-пакеты не предлагал. Я ему предлагал - http://shop.wild-mix.com/images/docs/PWD.doc

Хуже всего то, что я на Украине, он в России. Я пока не могу решить вопрос отправки ему даже двух девайсов для теста - имеется в виду, чтобы не два месяца шли. Проводники, щусята, отказываются две коробочки передать...


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Jan 12 2009, 15:38
Сообщение #6


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Неплохой у вас дивайс.
Неужто всего за пару десятков баксов продаете? biggrin.gif

Кстати не пробовали web страницы во Flash делать?
Например используя среду разработки Adobe Flex.
Можно получить шикарный дизайн и пользовательский интерфейс как у standalone приложения.


Цитата(Rst7 @ Jan 12 2009, 16:07) *
Лично я человеку банальный отвечатель на ICMP-пакеты не предлагал. Я ему предлагал - http://shop.wild-mix.com/images/docs/PWD.doc

Хуже всего то, что я на Украине, он в России. Я пока не могу решить вопрос отправки ему даже двух девайсов для теста - имеется в виду, чтобы не два месяца шли. Проводники, щусята, отказываются две коробочки передать...
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jan 12 2009, 16:00
Сообщение #7


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Неужто всего за пару десятков баксов продаете?


200 штук по $21.6. Розница $25. В эпоху стабильности было даже дешевле (в цену комплектухи трейдеры не закладывали неизвестность завтрашнего курса бакса).

Цитата
Кстати не пробовали web страницы во Flash делать?


Нет. Пользуюсь java-script и XMLHttpRequest. Ну и еще небольшим гейтом HTTP<->MySQL, на данный момент сделаном на IIS+JScript. Хотя, с тем же успехом, это может быть апач+пхп, там 15 строк кода.

А как кстати сейчас с Flash'ом на младших братьях - в смысле, на КПК? Дело в том, что Опера 9.5 работает совершенно одинаково (имеется в виду Javascript, DOM, фичи HTML5) , что на большом брате, что на младшем, нет проблем с переносом, одни и те же веб-страницы с file://localhost/ работают. Из КПК прикольные беспроводные ДУшки получаются smile.gif


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Jan 12 2009, 19:31
Сообщение #8


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Надо же какой демпинг!
А зачем "гейт" если там у вас трапы посылаются? Или что такое "гейт" у вас?

На Flash и перешел именно из-за переносимости, тяжеловато приводить JavaScript и HTML к единому виду в IE, FF, Хроме и Опере
Опера у меня в телике стоит, Flash в ней работает.

Цитата(Rst7 @ Jan 12 2009, 20:30) *
200 штук по $21.6. Розница $25. В эпоху стабильности было даже дешевле (в цену комплектухи трейдеры не закладывали неизвестность завтрашнего курса бакса).


Нет. Пользуюсь java-script и XMLHttpRequest. Ну и еще небольшим гейтом HTTP<->MySQL, на данный момент сделаном на IIS+JScript. Хотя, с тем же успехом, это может быть апач+пхп, там 15 строк кода.

А как кстати сейчас с Flash'ом на младших братьях - в смысле, на КПК? Дело в том, что Опера 9.5 работает совершенно одинаково (имеется в виду Javascript, DOM, фичи HTML5) , что на большом брате, что на младшем, нет проблем с переносом, одни и те же веб-страницы с file://localhost/ работают. Из КПК прикольные беспроводные ДУшки получаются smile.gif
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jan 12 2009, 20:34
Сообщение #9


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Надо же какой демпинг!


Никакого демпинга. Оно примерно столько и стоит в серийном производстве.

Цитата
А зачем "гейт" если там у вас трапы посылаются? Или что такое "гейт" у вас?


Трапы там исключительно для тех, кто жить не может без snmp.

А вообще, изначально это мост Modbus over TCP - over serial line. Потом я решил для других своих модулей телеуправления сделать систему сбора данных, пользуясь технологией ajax (надоел кривой, непортабельный и не модифицируемый софт, писанный приглашаемыми на каждый проект писюковым кодерами).

В результате была сделана трансляция http - modbus. Потом туда был прикручен функционал ребутера. Потом добавилось имитация устройства модбас для получения состояния реле и аналоговых входов. Потом был написан модуль (на хтмл+жабаскрипт), который обслуживал именно этот девайс, как устройство модбас.
Потом был прикручен слив полученных из модулей данных в базу, реализованную на mysql.

Вообщем это выглядит так:

Структура страниц у меня там примерно такая. Есть корневой хтмл, который грузит мой фреймворк для работы с мостом хтмл - модбас, в нем делается необходимое количество iframe'ов, в каждый грузится хтмл, уникальный для каждого типа приборов, который производит визуализацию и обработку органов управления конкретно для данного типа девайсов. Конфигурация, зависящая от объекта (адреса модулей на шине модбас, доменные имена мостов, имена таблиц архивов в мускуле и т.д.) передаются из корневого хтмл через урлы загрузки подчиненных страниц.

Собственно фреймворк один и тот же для всех модулей. Для заточки под объект необходимо в корневом хтмл размножить необходимое количество ифреймов, изменить названия хтмл-файлов, которые загружаются туда, и откорректировать адреса. После открытия корневого файла система работоспособна. Ах да, еще надо позапускать скрипты для создания баз/таблиц/встраиваемых процедур в мускуле. Вообщем, доступно любому вебпрограммеру средней руки smile.gif


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Jan 12 2009, 21:49
Сообщение #10


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Хм, если понял правильно вашу технологию,
то скажем клиенту в обсуждаемом случае придется сделать страницу содержащую 200! iframe ради возможности управлять всеми дивайсами одновременно.
Каждый из iframe должен как-то из JavaScript организовать ping.
Хотя я не знаю как с помощью JavaScript можно сгенерировать ping. Ведь это не HTTP поверх TCP, а более низкий слой.
Зная проблемы стабильности JavaScript в броузерах и неудобные средства отладки это очень опасное решение.
Может оказаться, что вообще 200 потоков скриптов не смогут в броузере работать.

Если речь идет об MySQL то тут наверно дивайсы в вашей технологии сами должны слать пакеты на IIS.
Т.е. сервер должен открыть публичный порт для некоего приложения у себя написанного под IIS.
Самого приложения для Ping-ов как я понял еще нет.
Странно что предлагая ставить ваши устройства в отдельный VLAN у вас нет настройки тега VLAN в устройствах.

Это все к вопросу о конечной цене решения.
Она далеко не так ясна как кажется.
Программист даже "средней руки" бесплатно работать наверно не будет.

А вот ActionScript в технологии Adobe Flash может создать сокетное подключение с любым бинарным протоколом и реально мог бы из броузера управлять двумя сотнями дивайсов. biggrin.gif



Цитата(Rst7 @ Jan 13 2009, 00:04) *
Никакого демпинга. Оно примерно столько и стоит в серийном производстве.

Вообщем это выглядит так:

Структура страниц у меня там примерно такая. Есть корневой хтмл, который грузит мой фреймворк для работы с мостом хтмл - модбас, в нем делается необходимое количество iframe'ов, в каждый грузится хтмл, уникальный для каждого типа приборов, который производит визуализацию и обработку органов управления конкретно для данного типа девайсов. Конфигурация, зависящая от объекта (адреса модулей на шине модбас, доменные имена мостов, имена таблиц архивов в мускуле и т.д.) передаются из корневого хтмл через урлы загрузки подчиненных страниц.

Собственно фреймворк один и тот же для всех модулей. Для заточки под объект необходимо в корневом хтмл размножить необходимое количество ифреймов, изменить названия хтмл-файлов, которые загружаются туда, и откорректировать адреса. После открытия корневого файла система работоспособна. Ах да, еще надо позапускать скрипты для создания баз/таблиц/встраиваемых процедур в мускуле. Вообщем, доступно любому вебпрограммеру средней руки smile.gif
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jan 13 2009, 08:43
Сообщение #11


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Каждый из iframe должен как-то из JavaScript организовать ping.
Хотя я не знаю как с помощью JavaScript можно сгенерировать ping.


А не нужно. Если девайс отвечает на HTTP-запросы, то, значит, коннект с ним есть smile.gif Пингать в него - это лишнее.

Цитата
Может оказаться, что вообще 200 потоков скриптов не смогут в броузере работать.


javascript в браузерах исполняется в один поток (по крайней мере в пределах одного окна). Никакой многопоточности.

Цитата
Если речь идет об MySQL то тут наверно дивайсы в вашей технологии сами должны слать пакеты на IIS.
Т.е. сервер должен открыть публичный порт для некоего приложения у себя написанного под IIS.


Ну тут я делаю примерно так - аварийные ситуации, которые летят по snmp, можно сливать в мускул банальным выполнением insert через консоль СУБД. Т.е. в конфигурации snmptrapd делается выполнение mysql -e INSERT blablabla по приходу моих трапов. Это предназначено только для сохранения текущих событий.

А вот детализированные данные по текущему состоянию (т.е. не событие, а, например, напряжения на аналоговых входах) сливаются в базу именно через жабаскрипты. Они же ходят, опрашивают приборы для визуализации, соответственно в коде страницы какой-либо параметр не только вставляется в нужное место html, но и отправляется на сохранение в мускуле через ajax-запрос. На самом деле там еще происходит буферизация и прочее, но это уже технические детали.

Цитата
Самого приложения для Ping-ов как я понял еще нет.


Да оно и не нужно. См. выше.

Цитата
Странно что предлагая ставить ваши устройства в отдельный VLAN у вас нет настройки тега VLAN в устройствах.


Дык VLAN'ы в свиче настраиваются. Если там не включена поддержка этого дела, то я могу хоть сто тегов VLAN вставить в пакеты, но никакого толка от этого не будет. А я из приходящих пакетов теги VLAN просто стрипаю, дабы при случайном отключении стрипа VLAN-тегов в исходящих пакетах порта не произошла потеря связи с девайсом.

Да и вообще. Устройство расказывает от своем состоянии через Modbus over TCP. Можно прикрутить к любой SCADA-системе. Например сюда - http://oscada.diyaorg.dp.ua/index.php?id=2&L=1


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Клим
сообщение Jan 13 2009, 09:00
Сообщение #12


Местный
***

Группа: Свой
Сообщений: 230
Регистрация: 7-04-08
Из: Украина, Запорожье
Пользователь №: 36 541



Цитата(Rst7 @ Jan 13 2009, 11:43) *
javascript в браузерах исполняется в один поток (по крайней мере в пределах одного окна). Никакой многопоточности.


Хм. Всегда считал, что ajax-запросы выполняются параллельно (Максимум одновременно - количество одновременных соединений к сайту в настройках)

Устройство получается интересным, но суть опроса через браузер мне абсолютно не нравится.
По моему тут обязательно должна быть серверная часть, которая будет опрашивать все устройства и писать все в базу. А клиентское приложение должно только просматривать результы из базы и вносить изменения в настройки.

P.S. А если уж очень хочется совместимость SCADA и прочими системами, то неплохо было бы реализовать протокол OPC. Хотя лично я слабо себе представляю, как его реализовать в простых контроллерах.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jan 13 2009, 09:42
Сообщение #13


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Хм. Всегда считал, что ajax-запросы выполняются параллельно


Запросы - да. А вот само исполнение javascript'а - один поток.

Параллельность там из-за того, что после .send() надо ждать DOM-сообщения. В это время можно запустить еще один запрос, или что-то другое сделать. Но, если, например, после .send() сделать for(;;), то сообщения Вы никогда не получите, потому как поток - один.

Цитата
P.S. А если уж очень хочется совместимость SCADA и прочими системами, то неплохо было бы реализовать протокол OPC. Хотя лично я слабо себе представляю, как его реализовать в простых контроллерах.


Да берется просто готовый OPC-сервер протокола Modbus over TCP и все.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Jan 13 2009, 14:06
Сообщение #14


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



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

HTTP понятно, но они требуют выделения на дивайс IP и возню с ними, в то время как Ping можно было бы в роутере редиректить на дивайс и все дивайсы могли бы иметь одинаковый IP и сильно уменьшились бы расходы на обслуживание и конфигурацию.

Движок скрипта в одном потоке выполняет лишь процедуры реакции на ивенты написанные в HTML странице.
А по сути асинхронные запросы (AJAX) выполняются в отдельных потоках.
Т.е. каждый HTTPRequest вызывает образование нового потока. Это свободно можно наблюдать c помощью ProcessExplorer
И вот эти потоки реквестов и есть основная причина торможения и зависаний броузеров ибо логика таймаутов там на рудиментарном уровне пока еще.

Не скажу что решение вообще неработоспособно, но такой винегрет из опенсорсных утилит, MySQL и скриптов наверно и достоин быть оценен в 20$


Цитата(Rst7 @ Jan 13 2009, 13:13) *
А не нужно. Если девайс отвечает на HTTP-запросы, то, значит, коннект с ним есть smile.gif Пингать в него - это лишнее.

javascript в браузерах исполняется в один поток (по крайней мере в пределах одного окна). Никакой многопоточности.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jan 13 2009, 14:23
Сообщение #15


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



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


Человеку было предложено более правильное решение - не пингать в устройства из центра на места, а пусть устройства пингают до ближайших роутеров и ребутят свичи (или другое оборудование), если пропала связь. А дальше - любой каприз, хотите - ловите трапы (устройства отправляют их при изменении состояния реле и входов), хотите - ходите к устройствам через HTTP. Хотите - через 502й порт.

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


А мы с Вами можем обсуждать философию построения таких систем/устройств хоть до китайской пасхи, лично мне беседа с Вами приносит только удовлетворение, всегда приятно поговорить с умным человеком smile.gif

Можем, в частности, попросить модераторов отделить обсуждение в отдельную ветку, где и продолжим. Тут это, все-же, оффтоп.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post

5 страниц V   1 2 3 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 17:47
Рейтинг@Mail.ru


Страница сгенерированна за 0.0151 секунд с 7
ELECTRONIX ©2004-2016