Нужна помощь ваших знаний!

Сергей163
Offline
Зарегистрирован: 06.10.2018

Хочу повторить эту тему! самодельный подводный компьютер. https://www.youtube.com/watch?v=T_S0_k6bTyM. Кто может объяснить, как написать программу?

wdrakula
wdrakula аватар
Offline
Зарегистрирован: 15.03.2016

Ну вот! Опять "плохо объясняете" ;). Нет уважениея к человекам, а они, как говорят - "звучат гордо"...

Ладно, в честь шабата и утренней трезвости, могу сделать вид, что ТС не совсем дебил, а просто страдает дизлексией и не может правильно сформулировать вопросы.

Итак, для такого устройства нужны 4 вещи:

1. датчик абсолютного давления с диапазоном хотя бы да 650 КПа = 6.5Е5 Па = 6.5 Бар, что примерно соответствует погружению на 65 метров. Для СКУБА-дайвинга достаточно. Хотя стоит поискать датчик до 10-12Бар.

2. Экранчик, но тут просто OLED 0.96 или 1.3 дюйма - самое то, по эффективности.

3. источник питания = зарядное-на-ЛИПо-от-USB + ЛиПо + преобразователь. Преобразователь выбрать на 3.3 или 5, в зависимостb от датчика. Лучше 3.3 и датчик на него искать.

4. Контроллер по принципу минимального потребления. Attiny85 вполне хватит, он есть в простом для пайки новичком DIP корпусе.

----

еще нужно будет придумать и испытать корпус, который выдержит погружение на 30-40 метров.

----

А программа - уж как нибудь напишешь, не совсем же дебил, там и программы-то нету, по кусочкам, из примеров. Для экрана есть примеры, для датчика есть и т.д.

Сперва придумывают логику устройства - в свободной форме: что на экране?, каие кнопки? какая реакция на кнопки?

Потом начинают все это писать в "два потока": в первом потоке - олаживают мелочи - как идут часы, как читается датчик, как обрабатывать кнопки и вывод на экран. Во втором потоке пишут основной код, от крупной структуры и далее детализируя каждый этап, пока не придешь к отработанным функциям из первого потока.

в случаей дайвинг-компьютера основной код в логике setup-loop такой:

setup() - тут вся инициализация, какая нужна сам поймешь

loop()

1.прочитать кнопки

2. обновить часы и датчик

3. если событие кнопки - обработаем его

4. если прошла секудна (частота обновления экрана, обычно - 1 сек) то обновим экран.

----------

если возникнет желание обрабатывать декомпрессионные паузы - то нужно завести в программе что-то типа события наступления паузы и придумать, как дать дайверу знать о наступлении - типа вибрации на приборе.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Эк тя на шабат-то пробило! Вроде до дня святого нуба ещё далеко.

APJ
Offline
Зарегистрирован: 25.03.2015

Это не компьтер, а боттон таймер (глубиномер+таймер). Компьютер должен расчитывать бездекомпрессионное время и последующую декомпрессию, если она наступит. Причём используют несколько различных алгоритмов, по различным тканям.

Вообще конкретно в этои проэкте самое сложное это сделать нормальный корпус.

http://seawooch.com.ua/devices/mk2/inside.htm

Например как этот

wdrakula
wdrakula аватар
Offline
Зарегистрирован: 15.03.2016

ЕвгенийП пишет:

Эк тя на шабат-то пробило! Вроде до дня святого нуба ещё далеко.

Тут все просто: мне очень не хотелось идти разбирать стиралку, которая "встала", да еще и без кодов ошибок  встала. Не крутит и молчит, как партизан у фашистов на допросе!

...

Все равно "от жены и от сумы" ...Вынул модуль Аркадия, перепаял симистор, ...работает. Но очень не хотелось рабирать, пока жена не проснулась - сидел в форуме и радовался отсрочке ;)... И вообще - паяльник в Шабат! Ужос-на!

Жене же не объяснишь, что в Шабат никак не можно стиралку разбирать! Она отвечает, что она больше еврейка, чем я - ей и решать, что в Шабат можно! ;)

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

wdrakula пишет:
перепаял симистор
Фу, блин! Я уж подумал, что миллис переполнился!

wdrakula
wdrakula аватар
Offline
Зарегистрирован: 15.03.2016

ЕвгенийП пишет:

Я уж подумал, что миллис переполнился!

Ну нет, все не так страшно... ты уж не пугай, серце то, не железное!.