Цитата:
Снимаю шляпу, пошел серьезный разговор. Позвольте уточнить данные собирались с контроллеров Сегнетикс с подключенными модулями ввода вывода по шине Сегнетикс? В скриншоте есть цифра 265 ошибок. Как Вы на них реагировали.
|
Это количество ошибок возникает в начальный момент времени, пока происходит синхронизация потоков данных. В дальшейшем могут возникать ошибки, и алгоритм обработки в своих расчетах просто не использует значения (кадры), которые не удалось принять.
Цитата:
Позвольте уточнить данные собирались с контроллеров Сегнетикс с подключенными модулями ввода вывода по шине Сегнетикс?
|
Расположение АЦП, естественно, было не на промышленном компьютере. Данные собирались специализированной платой, с набором реле, оптическими входами и выходами (т.к. оборудование рассчитано на напряжение 6 киловольт) и прочей необходимой обвязкой. Соединение платы с пром.компьютером было по USB, с помощью FTDI FT232RL (USB to Serial UART).
На плате для управления и обеспечения связи стоял микроконтроллер ATXMEGA128A, программу для которого делали тоже мы.
Цитата:
На экране у Вас Тест. Вы испытывали на реальном производстве хотя бы год? Это было бы большим плюсом.
|
Да, использовали.
Цитата:
Спасибо за адекватную оценку. Тогда чем?
|
Для Linux доступен широкий набор инструментов. Сейчас я придерживаюсь языка/платформы Go. Правильный выбор архитектуры системы, с использованием буферов для накопления данных, распределение обработки на разные уровни позволяет сгладить неровности работы операционной системы и платформы.
Цитата:
Здесь Вы ошибаетесь. Если сохранять данные влоб без сжатия упираемся в длину кортежа. В PostgreSQL это примерно 1200 значений.
|
Какую-то ерунду пишете. BLOB (Binary Large Object) предназначен для хранения блоков большого размера, килобайты/мегабайты. В одном мегабайте может поместиться до 8 миллионов бинарных значений, про какие 1200 значений вы говорите?
Максимальный размер BLOBа по умолчанию в SQLite -- 1
миллиард байт.
Цитата:
Возможно Вы тестировали такое решение в контроллерах Сегнетикс на SQLite?
|
Тестировали и реализовывали на SQLite много разных задач, в т.ч. по протоколированию промышленных процессов. Если достаточно понимать, как правильно построить системы, что стоит ждать от инструмента, а что не стоит, то все получится.
И SQLite -- это встраиваемая БД, ее штатное использование -- встроить внутрь программы, свой независимый экземпляр. То, что в контроллерах ядро SMLogix и окружение использует SQLite не имеет никакого значения, потому что "ту SQLite" не имеет никакого смысла использовать. Она для других целей.
Цитата:
У меня узкое место только запись в БД. Вы за эту задачу пока не брались.
|
Брались и решали. Только решали ее не тупо "берем и используем", а:
1) анализируем требования к системе, в т.ч. по скорости работы;
2) строим архитектуру системы по требованиям. включая иерархию обработки данных;
3) используем инструменты по назначению, не пытаемся забивать гвозди микроскопом или стрелять из пушки по воробьям.