Нужен совет или свой взгляд на следующую задачу. Метеостанция (куда ж без неё) на Ардуине должна писать данные на sd-карту, чтобы потом выводить график на экран. Для удобства решил писать значения каждые 15 минут, соответственно, 72 значения в сутки (мне так удобно выводить на экран, незачем лишние данные писать). И вот тут есть несколько вариантов решения вопроса:
- писать как есть, подряд, один файл, одна строка - один день (можно вначале поставить дату, либо ДД, либо ДД.ММ) - вроде все просто, но есть нюансы: при пропаже одно-двух-десяти значений (отвалился датчик на время, пропало напряжение и т.д.), график будет неполным. И непонятно, какие именно данные потерялись: в начале, в середине или конце.
- тогда другой вариант: писать дату и время снятия. Но тогда будет сложности с чтением. Скажем, при пропуске, к примеру, времени 12:30, 12:45, 13:00, у меня просто не будет точки на графике. В самом файле уже в строке придется хранить под 150 значений (дата, время1, значение1, ..., время72, значение 72) и сложно засунуть эти данные в Эксель для дальнейшей обработки.
Это два таких глобальных направления, о которых думаю. Там каждое еще можно поделить на две-три ветки, но это все детали. Кто проходил через подобные задачи, как решали?
Опишу свои хотелки: нужно оставить датчик температуры (даже, сеть датчиков) на даче без доступа в интернет. По возвращении смотреть какая температура была в течение суток до фактически двухнедельной давности. Либо, если уж писать данные в свои файлы по дням и месяцам, то и год хранить можно. В деле обработки данных сильный новичок, само решение-то, может, и найду, но потрачу много времени, а потом окажется, что надо было делать по-другому и начинать все заново. Что уже умею: читать, писать файл, собирать строки, само собой выводить все это на экран. Очень пока плохо понимаю само чтение и растаскивание на части. Сам массив забить данными могу, но какой разделитель использовать? Брать, конечно, буду целочисленные значения температуры (int), поэтому запятая остается свободной (как для скетча, так и для Экселя). Больше склоняюсь к варианту записи вместе со временем, может, взять двухмерный массив, но как писать в разные строки (по сути надо заполнять строку выше со временем снятия и строку ниже со значением t)? Писать построчно <дата>,<значение> - это плодить кучу файлов на диске по сути мелкого объема (каждый день - новый файл). Хотелось бы, чтобы один файл - это один месяц, одна строка - один день, от 28 до 31 строки в файле.
Выслушаю любое мнение или совет. Сейчас в голове Броуновское движение, а нужно дать направление, в какую сторону думать.