Данная тема является логическим продолжением темы Форумный акваконтроллер.
В предидущей теме после 50-ти с лишним страниц обсуждения наконец пришли к определенности.
Итак базой для контроллера служит сборка MINI2440,
с дисплеем 7":
или 3,5":
Все контроллеры с тачскрином, так что клавиатура не нужна
Кроме этого к контроллеру через второй USB может быть подключена любая USB мышка или клавиатура.
Схема контроллера не секрет, так что желающие могут попробовать изготовить самостоятельно (см. вложение)
Параметры у обоих одинаковы:
Samsung S3C2440A 400MHz, Max freq. 533Mhz SDRAM
Ø 64MB SDRAM
Ø 32bits Data Bus width
Ø 100MHz Clock Flash
Ø 4 wire resistive touch screen interface
Ø Up to 4096 color STN, 3.5 inches to12.1 inches, up to 1024x768 pixels
Ø Up to 64K color TFT, 3.5 inches to 12.1 inches, up to1024x768 pixels
Ø In box 256K color 800x480/7.0 inches TFT LCD screen, with touch screen Interface and Resource
Ø 1 x 10/100M Ethernet RJ-45(DM9000)
Ø 3 x Serial Ports(1 RS232 with CTS and RTS)
Ø 1 x USB Host
Ø 1 x USB Slave Type B
Ø 1 x SD Card Interface
Ø 1 x Stereo audio out, 1 Micro In
Ø 1 x 10-Pin JTAG
Ø 4 x USER LEDs
Ø 6 x USER buttons
Ø 1 x PWM Beeper
Ø 1 x POT can be used for A/D converter adjust
Ø 1 x AT24C08 for I2C test
Ø 1 x 20-Pin Camera Interface
Ø 1 x Battery for RTC
Ø 1 x Power In(5V), with switch and lamp Oscillator Freq.
12MHz RTC
Internal Expand Interface
Ø 1 x 34-Pin 2mm GPIO
Ø 1 x 40-Pin 2mm System Bus Dimension
100 x 100(mm) OS Support
Ø Linux 2.6.32
Ø Windows CE.Net 5.0/6.0
Ø uCos2
Контроллеры можно приобести на eBay. Цена от 120 до 205$ с доставкой в Украину (до порога квартиры).
В принципе можно использовать любые контроллеры ARM9, но могут возникнуть проблемы с портами.
Кроме самого контроллера будет отдельная плата с блоком питания (+/- 5В), восемью исполнительными устройствами, четырьмя входами АЦП и четырьмя датчиками температуры.
К одному контроллеру можно подключить несколько таких плат (блок питания делается только на одной). Все платы соединяются с контроллером по шине 1-Wire (обычный телефонный/модемный четырехжильный кабель).
Принцип прост: одна плата - один аквариум
Программным обеспечением в настоящий момент занимается Володя Череп, Vanessa и Ваш покорный слуга. Кто хочет присоединиться - милости просим.
Планируемые функции программы примерно те-же, что и в Акваконтроллере Юсупова, но более расширены и для большего количества аквариумов. Ну и плюс цветной графический тачскрин дисплей, плюс Ethernet, Internet, возможность подключения камеры, звука и т.д. и т.п.
.................................................. ............
Прошу в данной теме вопросы типа "А шо это такое и шо оно делает !?" не задавать
Зазвичай виробник вказує робочий діапазон. На моїй практиці були випадки, при робочому діапазоні 0..+40, не включалась підсвітка CCFL при +10 (мабуть вірніше спрацьовував захист). Зображення в відбитому світлі проглядувалось. Мається на увазі, що мова йде про TFT матриці з підсвіткою лампами з холодним катодом (CCFL).
Застрягли, бо трохи не вистачає часу й натхнення. Коли з'явиться перше й друге, будемо продовжувати.
Останні (недорозведені) версії плат є в архіві, приєднаному до першого повідомлення цієї теми.
Остання версія вихідних кодів програми для роботи з 1-wire-пристроями DS18B20, DS2450 та DS2408 міститься в архіві ctrl2_v10.rar, прикріпленому до цього повідомлення. Залишилося написати прикладну частину програми: додати пошук та ідентифікацію периферійних блоків, роботу з таймером, взаємодію з ПК та графічний інтерфейс керування акваріумами.
Для компіляції програми необхідно виконати такі дії:
Встановити середовище разробки (MS Visual Studio 2005 - для Windows, gcc - для Linux)
Встановити Qt 4.6.3 або вище.
Розпакувати програму в окремий каталог.
Відкрити файл src/platform.h та розкоментувати той #define, який відповідає операційній системі, під яку компілюється програма (_LINUX_ та _WINDOWS_ - для ПК, _LINUX_EMBEDDED_ та _WINDOWS_CE_ - для mini2440).
З цього каталогу виконати команди:
qmake -project (створити файл Qt-проекту .pro)
qmake (створити makefile)
make (компілювати)
Якщо лінкер почне видавати помилки, то необхідно внести зміни, наведені у файлі forgcc.patch з архіву forgcc.rar)
Останню версію програми я запускав на віртуальній машині ПК під Ubuntu Linux (1-wire пристрої були підключені через перетворювач USB-UART, з яким віртуальна машина працює дуже повільно), під Debian Linux на ПК (без використання віртуальної машини програма працювала набагато швидше) та на mini2440 під Windows CE 6.0 (програма теж працювала швидко). vanessa вдалося запустити програму на mini2440 під Linux (образ на основі busybox, ось тут про нього написано), але в мене не вийшло цього зробити - програма компілювалася, але на mini2440 під різними образами Linux Embedded або взагалі не запускалася, або не реагувала на натискання кнопок.
-------------------------------------------------------------------- Part of the message in Russian language
В архиве ctrl2_v10.rar, прикрепленном к этому сообщению, содержатся исходные тексты программы для работы с 1-wire устройствами через порт RS232 или UART. В текущей версии программы не реализованы все необходимые функции для управления аквариумами. Исходные тексты могут быть использованы для написания собственных программ управления аквариумом. Некоторые исходные файлы получены путем изменения файлов, взятых из других проектов с открытым исходным кодом под лицензией LGPL. В таких случаях подробности указаны в комментариях в начале файлов.
В текущей версии программы поддерживается три типа устройств:
- термодатчики DS18B20
- АЦП DS2450
- ключи DS2408
Поддерживается настройка дискретности термодатчиков и каналов АЦП
(по щелчку на устройстве). Поддерживается включение/выключение
подтяжки к земле канала АЦП или ключа (по щелчку на канале).
Программа компилируется под Windows, Windows CE, Linux и
Linux Embedded.
Последовательность действий для создания исполняемого файла программы:
Установить среду разработки (MS Visual Studio 2005 - для Windows, gcc - для Linux)
Установить Qt 4.6.3 или выше.
Распаковать исходные файлы программы в отдельный каталог.
Открыть файл src/platform.h и убрать символы комментирования "//" в той строке #define, которая соответствует той среде, в которой будет запускаться программа (_LINUX_ и _WINDOWS_ - для ПК, _LINUX_EMBEDDED_ и _WINDOWS_CE_ - для mini2440).
Из каталогу с исходными файлами программы выполнить команды:
qmake -project (создать файл Qt-проекта .pro)
qmake (создать makefile)
make (создать исполняемый файл программы)
Если линкер выдаст ошибки, то необходимо внести изменения, перечисленные в файле forgcc.patch из архива forgcc.rar)
1. Убрал -5вольт на другой слой- подальше от 220в.
2. Небыло соединений R11-r13-r15-r20 с контактами разьема.
3. Добавил земляной полигон под разьемы- он не помешает, а может кто экранированные поставит.
4.Силовая часть совсем не понял- зачем разделил на 2 части? Значит и на схеме дели.
Счас согласно схемы
5.Добавил блокировочных кондюков по питанию +5 вольт. кто захочит будет ставить. (между разьемами XS1 - XS6)
__________________
Страна не ублюдков и не воров.
__________________
Ці 2 користувач(ів) сказали Дякую Sem за це повідомлення: