Есть приставка Kartina Micro HD для просмотра каналов Kartina ТВ через интернет (www.kartina.tv/shop_conte..., есть прошивка для неё. Есть приставка DUNE HD 102 и прошиввка для неё (dune-hd.com/firmware/tv10... точнее это одна и та же приставка. ...
Написание алгоритма/псевдокода программы логирования
Исходные данные:
1) Имеется промышленный контроллер. В нем 50кБ рабочей памяти (аналог RAM) и 4Мб внешней памяти (аналог ROM).
2) К контроллеру подключен некий аналоговый датчик, данные с которого должны сохраняться каждых 100мс в ячейку памяти в массиве находящемся в рабочей памяти, при достижении конца массива запись начинается с начала массива (при условиях о которых дальше). Размер одной записи 14 байт (значение сигнала - 4 байта, значение доп. - 4 байта, таймстамп - 6 байт)
3) Приложение на компьютере должно читать данные с рабочей памяти контроллера пачками не более PDU 190 байт и складывать в свою базу данных, также строить график. После вычитывания контроллер должен путем записи в рабочую память контроллера сигнализировать какие записи он уже вычитал.
4) В идеальном случае указатель чтения контроллером бежит рывками за указателем логирования. В случае же когда связь между контроллером и приложением обрывается, указатель чтения останавливается и при достижении определенного расстояния между указателями программа контроллера должна начать сохранять данные во внешнюю память, но на так как писать прямо во внешнюю память сразу нельзя, необходимо использовать функцию перемещения области памяти из рабочей памяти во внешнюю. Область которая подлежит перемещению во внешнюю память не должна поддаваться записи на время перемещения. Таким образом запись ведется до окончания всей памяти (и внешней и внутренней), после чего прекращается, пока не будет восстановлена связь с ПК.
5) Когда связь с ПК восстановлена необходимо начать процесс чтения данных в порядке в котором они были сохранены. Обратный алгоритм перемещения соответственно - копировать область памяти из внешней памяти в рабочую а оттуда вычитать приложением. Параллельно может начаться процесс записи в рабочую область новых значений.
Что необходимо:
Для вышеописанного процесса нужен алгоритм и/или псевдокод. Особенно важно подробно описать процессы "жонглирования" памятью и структуры указателей чтения/записи.
В дальнейшем, возможно, и программу для ПК закажу (предварительно C#). Библиотеки для связи с пром контроллером есть. Но это это уже смотря как пойдет первая часть с контроллером.
Заявки фрилансеров
Похожие заказы
- Системное программированиенет заявокЗакрыт9 лет назад
Необходимо разработать логику системы. Нужен аутсорс программист С++ или C#. Опыт работы с Erlang очень желателен. Базовое понимание принципов теории массового обслуживания и распределения Пуассона очень приветствуется. Если готовы взяться, оставляйте в отклике скайп ...
Системное программирование2 заявкиЗакрыт10 лет назадКраткое описание: Нужна служба или процесс, которая при запуске будет сканировать жёсткий диск находить папки с игрой (индикатор того что это нужная папка - наличие в ней определённого набора файлов - по названию) и ...
Системное программирование1 исполнительЗавершен10 лет назадМы используем формы InfoPath 2013 на сервере SharePoint 2013. Руководство будет подписывать эти формы с помощью цифровой подписи (выданной локальным сертификационным сервером). После того, как форма подписана, ее уже невозможно редактировать. Все ...
Системное программирование1 заявкаЗакрыт10 лет назадНеобходимо реализовать логику на стороне сервера. Подробности в приложении. С тем кто возьмется, отдельно договоримся по цене и срокам.
Системное программирование5 заявокЗакрыт10 лет назадДобрый день, уважаемые фрилансеры. Тема работы: Построение компьютерной сети на предприятии ссылка для скачивания методических рекомендаций - https://cloud.mail.ru/public/43NFv53A2N3z/%D0%9C%D0%B5%D1%82%D0%BE%D0%B4%D0%B0.pdf пример готовой работы, схема здания и расположение ПК в приложенном архиве ...
Системное программирование2 заявкиЗакрыт10 лет назадНа full-time на удаленную работу требуется программист для разработки прикладного ПО под Windows. Мы ждём от вас: - Знание наиболее распространённых паттернов проектирования. Навыки рефакторинга и работы с большими объёмами кода. ...
Системное программирование3 заявкиЗакрыт10 лет назадСуть задачи: нужно контролировать перемещение курсора. каждый раз, как только курсор принимает вид "лапки" (при наведении на ссылку, например), нужно записать время и координаты курсора на экране в файл в виде: time1;X1;Y1 ...
Системное программирование11 заявокЗакрыт10 лет назадНеобходимо реализовать программу на c++. Распарсить файл по образцу. Файл содержит очень много информации, сотни тысяч строк.
Системное программирование3 заявкиЗакрыт10 лет назад- $30
необходимо реализовать протокол обмена данными RDT3.0 (на С) - простую реализацию на UDP - при помощи Stop-and-Wait на UDP - при помощи Extended-Stop-and-Wait на UDP что ...
Системное программированиенет заявокЗакрыт10 лет назад