Показать сообщение отдельно
Старый 02.08.2019, 13:24   #8
ujin
Senior Member
 
Аватара для ujin
 
Регистрация: May 2010
Адрес: Novosibirsk
Сообщения: 761
Благодарил(а): 1 раз(а)
Поблагодарили: 10 раз(а) в 10 сообщениях
По умолчанию Ответ: Создание базы данных

Цитата:
Сообщение от ailcat Посмотреть сообщение
Под Линукс существует несколько СУБД разной степени навороченности, которые можно установить на контроллер.
Можно привести действующий пример с контроллером от сегнетикс?
Как подключить репозиторий с нужной СУБД, как установить если она вообще встанет на это железо, как настроить всякие systemd, initd, firewalld.
Цитата:
Сообщение от ailcat Посмотреть сообщение
Тогда на С++ нужно будет написать простейший шлюз, который будет забирать с Modbus/Localhost (это проще шмемов) подготовленные FBD-программой данные и отдавать их СУБД.
Про простейший сильно сказано. Надо реализовать MODBUS TCP протокол с одной стороны и обращение к СУБД с другой стороны. Причем обращение с помощью С++ API самой СУБД, так как ADO или ODBC на линуксе нет. У меня все это сделано на Linux Centos и на Debian с базой Postgresql. В качестве железа стандартный Х86_64 комп. Задачка точно не простейшая.
Цитата:
Сообщение от ailcat Посмотреть сообщение
Либо, если нет требований к жесткому онлайну (например, допустимы задержки до пары минут - чем больше тем лучше) - можно и проще:
- в FBD программе для контролируемых данных задействуйте элемент History
- настраиваете его на ежеминутный экспорт данных в файл excel/csv.
- средствами СУБД ежеминутно импортируете полученный файл в свою БД
- после импорта удаляете файл (некоторые СУБД это умеют).
Делаете средствами СУБД всё что левая пятка правой ноги захочет.
Только не забудьте, что у контроллера не жесткий диск с большим ресурсом а EEPROM, который таким способом можно уничтожить за пару тройку месяцев.
Цитата:
Сообщение от ailcat Посмотреть сообщение
Ну и главное:
БД и прочую фигню гораздо разумнее делать на универсальном ПК с полноценным дисплеем (замониторные "неттопы" недороги и довольно мощны) и, главное, на них есть полноценная ОС с не менее полноценными СУБД.
UPD:
У контроллеров ViewPAC есть 7 и 10-дюймовые панели с полновесной Windows Embedded. Это как раз та платформа, которая идеально подойдёт под озвученную задачу.
Windows Embedded точно не лучшая ОС для этой задачи. По производительности проиграет любому консольному линуксу (без иксов), хотя уже кое что и использовать можно. Опробовано на практике работает больше года без остановок и сбоев такая конфигурация.

Ну и главное то, что в контроллерах Сегнетикс уже есть встроенная СУБД SQLite (если не ошибаюсь). Можно ли ее использовать и как - это уже вопрос к Сегнетиксу.


__________________
В жизни 2 правила успеха:
1 Не говори всего что знаешь
2 ...
ujin вне форума   Ответить с цитированием