Народ, помогите! Вот такая задача! Есть прибор, разработанный на основе микроконтроллера MCS51. Разработанный прибор предназначен для установки в камере для сушки дерева! В его работу входит измерение влажности, температуры. И по этим данным он должен включать/выключать, то ли теплоснабжение, то ли оросительную систему.
У меня же стоит задача сделать микроконтроллер WEB-сервером, то есть так, чтоб к нему можно было обратиться через WWW. То есть сидя дома набрать адрес и послать запрос, а в ответ получить последние результаты измерения.
Я только начинаю работать с микроконтроллерами! Может ли кто помочь чем-то? Может кто-то когда-то с этим уже стыкался? Потому что я даже не представляю, за что нужно цепляться…
Последний раз редактировалось Espert Вт мар 18, 2008 09:55:25, всего редактировалось 1 раз.
при чем тут MCS51?
тут, блин, ARM+Linux надо или готовый комп... есть, в принципе, попытки сделать и на простых МК, но все едино - это убого и довольно сложно. А можно подключить GSM-телефон/модем и делать управление путем СМС... вот это значительно проще и реальнее на любом МК
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Требуется именно управление через WEB. Может то, что сервер должен быть сделан именно на контроллере, не критично? Например Берете обычный компьютер, на нем WEB сервер. На сервере скрипты, которые передают/принимают данные через порты, а к портам подключен контроллер. Так будет все равно проще и дешевле.
А если реализовывать все в контроллере - крыша съедет: стек протоколов, web сервер, сетевой интерфейс - ужас просто.
Последний раз редактировалось UA3MQJ Вт мар 18, 2008 10:38:10, всего редактировалось 1 раз.
Espert писал(а):Я только начинаю работать с микроконтроллерами!
Espert писал(а):просто мне сказали сделать
Если так, то эта задача слишком...Я подчёркиваю..Слишком сложна для новичка... И единственным решением для Вас в этом случае отказаться от этой работы объяснив отсутствием опыта. В противном случае Вы завязнете на год и так и не сделаете, что принесёт больше вреда, чем если сразу честно сказать, что такая задача Вам "не по зубам"
P.S. Что же это за фирмы, где новичкам сразу поручают такие работы?
Есть т.н. преобразователи интерфейсов: с одной стороны - Ethernet, с другой, например, RS-232 совместимый. Сейчас не готов привести ссылки, но точно есть такие. Возможно, стоит посмотреть в их сторону? Хотя это недешево.
Espert писал(а):Я только начинаю работать с микроконтроллерами!
Espert писал(а):просто мне сказали сделать
Если так, то эта задача слишком...Я подчёркиваю..Слишком сложна для новичка... И единственным решением для Вас в этом случае отказаться от этой работы объяснив отсутствием опыта. В противном случае Вы завязнете на год и так и не сделаете, что принесёт больше вреда, чем если сразу честно сказать, что такая задача Вам "не по зубам"
P.S. Что же это за фирмы, где новичкам сразу поручают такие работы?
Скажу прямо! Я учусь! У нас должна быть конференция! Мне пришли, дали тему – и вперед, дерзай!
Ну а проект, про который я росказал есть в действительности. Его делает тот препод! Ну и захотел всё сделать без компа! На одном микроконтроллере.
Последний раз редактировалось Espert Ср мар 19, 2008 22:47:18, всего редактировалось 1 раз.
Espert писал(а):Народ, помогите! Вот такая задача! Есть прибор, разработанный на основе микроконтроллера MCS51. Разработанный прибор предназначен для установки в камере для сушки дерева! В его работу входит измерение влажности, температуры. И по этим данным он должен включать/выключать, то ли теплоснабжение, то ли оросительную систему.
У меня же стоит задача сделать микроконтроллер WEB-сервером, то есть так, чтоб к нему можно было обратиться через WWW. То есть сидя дома набрать адрес и послать запрос, а в ответ получить последние результаты измерения.
Я только начинаю работать с микроконтроллерами! Может ли кто помочь чем-то? Может кто-то когда-то с этим уже стыкался? Потому что я даже не представляю, за что нужно цепляться…
Я вижу здесь 2 решения:
1) Есть хитрые ethernet разьёмы со встроенным веб сервером и uart'ом на выходе, например, http://www.rodnik.ru/htmls/pr_110403.htm. Дорого, но для разового решения самое то.
2) Соорудить переходник Ethernet-RS232 на ATMega64(128)+W5100, либо если у MSC51 использованного в проекте есть SPI или параллельный порт, подключить W5100 напрямую к MSC. Немного посложнее, но гораздо полезнее с точки зрения получения опыта.
Дон Амброзио писал(а):
Согласен на одном 51-м процессоре сделать Web-сервер... Тут работа даже не на кандидатскую, а на докторскую тянет... Хотя, ИМХО, даже академик это не сделает - у 51-го ресурсов не хватит (память, быстродействие и т.п.).А Вы, как Вы сами написали, новичок... Не вижу смысла в этой затее
Смотря ведь какие уровни модели OSI реализовывать. Если IP, то понятное дело, лучше выбрать другой процессор. А вот скажем UDP потянет. И если стек протоколов уже реализован аппаратно в другой микросхеме, так и делать нечего, тупо файлы из флеша отдать и MSC51 сможет.
А я опровергну выссказывание, что это очень сложно для новичка! Можно - главное взять правильные примеры! Прикрутить к вашему проэкту NE2000 совместимую карточку, желательно на RTL8019 и вперёд!
Так вот - ресурсы: http://members.home.nl/bzijlstra/softwa ... 8019as.htm
пошаговое использование сетевого контроллера - начиная с общения с ним, и продолжая до проверки связи с устроиством на уровне ping-a и web-a. К сожалению на Басик-е
Далее: http://members.home.nl/bzijlstra/softwa ... /basex.htm
примеры серверов на этом деле.. web, telnet ...
И немного о TCP/IP - уже на С++, а точнее много! Самое главное - его исполнение (IP, WEB, Telnet, Ping, SMTP, e-mail ...) для маленьких контроллеров: http://www.sics.se/~adam/uip/index.php/Main_Page
и портированный вариант для MSC51 (ссылка из основнои страницы): http://www.sics.se/~adam/uip/index.php/Main_Page хотя порт уже платный, увы но если порыться в нете - то добыть его можно, да и самому портировать - сложного мало!
Я думаю так.
Если с управляющего МК сделать вывод для подключения к компу по стандартному интерфейсу RS485 (надо будет программно смоделировать UART), то на этом компе уже можно ставить нужное программное обеспечение для работы в ВЕБе. Токовый интерфейс позволит связать комп и МК линией до нескольких сот метров.
Сам МК выходить в сеть по ВЕБ-интерфейсу не сможет- силёнок не хватит.
Сэр Мурр писал(а):Я думаю так.
Если с управляющего МК сделать вывод для подключения к компу по стандартному интерфейсу RS485 (надо будет программно смоделировать UART), то на этом компе уже можно ставить нужное программное обеспечение для работы в ВЕБе. Токовый интерфейс позволит связать комп и МК линией до нескольких сот метров.
В MSC51 есть хардверный усарт. Токовый интерфейс и RS485 вещи разные.
Сэр Мурр писал(а):
Сам МК выходить в сеть по ВЕБ-интерфейсу не сможет- силёнок не хватит.
Ещё как сможет, уж поверьте
Последний раз редактировалось Ватсон Ср мар 19, 2008 22:23:33, всего редактировалось 1 раз.
сможет-то сможет, однако, простым этот процесс не назовешь...
все более-менее известные "малые" TCP/IP-стеки реализованы на МК с приличным объемом встроенного ОЗУ и ПЗУ... кстати, на счет "легкости" портирования - сумлеваюсь что-то в том, что это так уж просто...
в общем, если вспомнить, что автор темы - начинающий, то все это попахивает каким-то фнатизмом или другим каким-то измом...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Сэр Мурр писал(а): Сам МК выходить в сеть по ВЕБ-интерфейсу не сможет- силёнок не хватит.
Вот.... В точку... Ведь это сразу было ясно.. Я это с самого начала и сказал.. И обсуждать то было нЕчего.
Почему-то все коты тут не верят в МК. Очень странно.
На самом деле ведь многое зависит от того,
1) какой именно МК, тот же XScale это тоже МК и с web на ура.
2) что из стека TCP/IP реализованно аппаратно. Если он полностью реализован аппаратно в какой-нибудь W5100 то любой самый примитивный х51 без проблем будет хоть торренты раздавать.