Сборка и испытания IDA-71S1 (этап 1). Проектирование этапа 2
Модераторы: Максим Васильев, трофи, DukeSS, KWAK
- AndyVas
- Участник
- Сообщения: 153
- Зарегистрирован: 01-02-2005 16:56
- Откуда: Минск Беларусь
- Контактная информация:
Он не "флэшевый" - одноразового программирования - боюсь что напорчу кучу пока устроит нужный вариант интерфейса. Хотя это решается моделированием на Протеусе. Плюс он не микромощный - для батарейного питания не очень подходит. Пока остановился на 16F684 а то и вообще на 8 ноговом 12F683 - оба из нановатт-серии.
К тому же к задаче по ребризеру - исходные данные AMTEL - а там 10 бит...???
К тому же к задаче по ребризеру - исходные данные AMTEL - а там 10 бит...???
Последний раз редактировалось AndyVas 27-10-2005 13:34, всего редактировалось 1 раз.
Листригон, вот ТАК поправил код:
Теперь пашет, но НДЛ до 7 метров работает...А если внизу насидеться и всплывать, он как-то не очень прибавляется...Т.е. насидел на 30 метрах 25 минут, поднялся на 5 метров отвешиваться - а там у нас НДЛ-то и не показывает...А глубже работает...Выкладываю....
Код: Выделить всё
if Pgas<Pcmpsafe[i] then C:=-1 else
if Pcmpsafe[i]<=Compartment[i] then C:=-2 else
if Pgas=Compartment[i] then C:=-2 else
B:=1/(1-(Abs(Pcmpsafe[i]-Compartment[i]))/(Abs(Compartment[i]-Pgas)));
if C<>-1 then
if C=-2 then C:=0
else C:=ThtA[i]*Log2(B)
else C:=0;
PADI Advanced Open Water Diver
IANTD EANx Nitrox Diver
IANTD EANx Nitrox Diver
А тут все просто - отлаживаете на Ф684 10-битной (прогу пишите с учетом того, что потом 12-бит будет) и прошиваете в С774. По поводу питания - вот его характеристики, по-моему вполне достойно:AndyVas писал(а):Он не "флэшевый" - одноразового программирования - боюсь что напорчу кучу пока устроит нужный вариант интерфейса. Хотя это решается моделированием на Протеусе. Плюс он не микромощный - для батарейного питания не очень подходит. Пока остановился на 16F684 а то и вообще на 8 ноговом 12F683 - оба из нановатт-серии.
Wide operating voltage range: 2.5V to 5.5V
• High Sink/Source Current 25/25 mA
• Commercial and Industrial temperature ranges
• Low-power consumption:
- < 2 mA @ 5V, 4 MHz
- 22.5 mA typical @ 3V, 32 kHz
- < 1 mA typical standby current
Хотя конечно с Ф684 с его 1наноампером не сравнится, но нужно ли это тут? При таком потреблении на двух пальчиковых батарейках будет очень долго работать...
PADI Advanced Open Water Diver
IANTD EANx Nitrox Diver
IANTD EANx Nitrox Diver
Сейчас посмотрю, пока на работе запарка- отвлекаюсь.
Даа, вот и у меня тоже - эта гадкая работа не дает серьезными вещами плотно заниматься!Листригон писал(а):Сейчас посмотрю, пока на работе запарка- отвлекаюсь.
PADI Advanced Open Water Diver
IANTD EANx Nitrox Diver
IANTD EANx Nitrox Diver
И не говори вечно эта работа мешается
Посмотрел , какой-то косяк есть, но думаю чуть позже разберусь, цифры очень похожие на правду.
Посмотрел , какой-то косяк есть, но думаю чуть позже разберусь, цифры очень похожие на правду.
Мне не нравится, как он себя при всплытии ведет...Т.е. то, что пропадает нахрен НДЛ "быстрых" тканей...Как тогда считать НДЛ-то блин? Хоть в Суунто пиши письма...Можно конечно взять сумму первых 10 тканей и поделить на 10...Листригон писал(а):И не говори вечно эта работа мешается
Посмотрел , какой-то косяк есть, но думаю чуть позже разберусь, цифры очень похожие на правду.
PADI Advanced Open Water Diver
IANTD EANx Nitrox Diver
IANTD EANx Nitrox Diver
Мне тоже, сейчас я разгребусь, и сяду разбираться.Мне не нравится, как он себя при всплытии ведет
- AndyVas
- Участник
- Сообщения: 153
- Зарегистрирован: 01-02-2005 16:56
- Откуда: Минск Беларусь
- Контактная информация:
В общем порылся я в документации на Evolution - так вот там значение PO2 отображается до сотых долей т.е. 1.27 или 0.67 например. При этом разрешение АЦП для точности в одну сотую должно быть порядка 5 милливольт (с учетом масштабирования до полной шкалы PO2-2.00 при Vref - 1.024 вольта) т.е. теоретически достаточно 8 разрядов АЦП чтобы обеспечить эту точность. Отсюда хорошая новость - 10 бит встроенного в Amtel АЦП будет достаточно для оцифровки сигнала кислородных датчиков в контроллере при точности измерения до сотых долей PO2! По крайней мере из описания электроники Evolution следует что именно так там и сделано. Погорячился я с тысячными...
Мда - а вот для анализатора придется все же эти тысячные мерить.
Мда - а вот для анализатора придется все же эти тысячные мерить.
Зачем? Если более нигде оно использоваться не будет?
PADI Advanced Open Water Diver
IANTD EANx Nitrox Diver
IANTD EANx Nitrox Diver
- AndyVas
- Участник
- Сообщения: 153
- Зарегистрирован: 01-02-2005 16:56
- Откуда: Минск Беларусь
- Контактная информация:
Чтобы мерить десятые доли процента - например 20.9% или 32.6%
Если резрешение - одна сотая то получится 21% 22% 32% 33%
P.S. Кстати в вот этом девайсе:
http://www.deepdiving.net/fgg/electro.html
все таки тысячные доли для PO2 товарищ измеряет... но ему пришлось внешние АЦП использовать. В общем назревает еще одна дискуссия - какая точность измерения PO2 приемлема для электроники ребризера...?
Если резрешение - одна сотая то получится 21% 22% 32% 33%
P.S. Кстати в вот этом девайсе:
http://www.deepdiving.net/fgg/electro.html
все таки тысячные доли для PO2 товарищ измеряет... но ему пришлось внешние АЦП использовать. В общем назревает еще одна дискуссия - какая точность измерения PO2 приемлема для электроники ребризера...?
Да по-моему проще отладить в симуляторе ПИК 16С774 и его юзать сразу...Могу в принципе помочь с этим делом. Пока мы с декомпрессиметром не разобрались нихрена...
PADI Advanced Open Water Diver
IANTD EANx Nitrox Diver
IANTD EANx Nitrox Diver
- AndyVas
- Участник
- Сообщения: 153
- Зарегистрирован: 01-02-2005 16:56
- Откуда: Минск Беларусь
- Контактная информация:
Тогда уж 16С771 - зачем мне 40 ног у 774?
Спасибо, я в Протеусе сначала сам поиграюсь, если будут вопросы - скину на почту...
Ух ты - так в 16С77х встроенная поддержка I2C уже заложена! А я как раз I2C ЖК индикатор хотел использовать!!!
Спасибо, я в Протеусе сначала сам поиграюсь, если будут вопросы - скину на почту...
Ух ты - так в 16С77х встроенная поддержка I2C уже заложена! А я как раз I2C ЖК индикатор хотел использовать!!!
Сейчас поюзал прогу , ты знаешь по моему все нормально.
Боюсь сглазить но кажется нас можно поздравить.
Сейчас еще погоняю.
Боюсь сглазить но кажется нас можно поздравить.
Сейчас еще погоняю.
Я тогда напьюсь наверно жестко, если оно заработаетЛистригон писал(а):Сейчас поюзал прогу , ты знаешь по моему все нормально.
Боюсь сглазить но кажется нас можно поздравить.
Сейчас еще погоняю.
Мучаю свою суунту.
Воздух, 21%. Симулятор. До 10 метров пустота
10 метров 187 минут.
20 - 42
30 - 18
На 20 метрах уже было 3 минуты дайв-тайм, на 30 - 4.
При подъеме на 9 метрах перестает показывать НДЛ.
Сравнил с нашей прогой - ну примерно получается как у Суунты, по 5й или 6й ткани.
Последний раз редактировалось Lt_Flash 27-10-2005 21:59, всего редактировалось 1 раз.
PADI Advanced Open Water Diver
IANTD EANx Nitrox Diver
IANTD EANx Nitrox Diver
Дык там вагон всего есть Корпус еще можешь выбрать квадратный и с удобными ножкам - будет мало места занимать. И, конечно, 771 если тебе портов много не надо. Все 16е совместимы между собой по коду, не считая всяких спец-шин или портов.AndyVas писал(а):Тогда уж 16С771 - зачем мне 40 ног у 774?
Спасибо, я в Протеусе сначала сам поиграюсь, если будут вопросы - скину на почту...
Ух ты - так в 16С77х встроенная поддержка I2C уже заложена! А я как раз I2C ЖК индикатор хотел использовать!!!
ЗЫ. А что есть Протеус, если не секрет? Я просто всегда писал на МПАСМе и МПЛАБ ИДЕ использовал, со встроенным симулятором. А на С переполз только недавно и в основном под 18ю серию, под 16ю так - поигрался и все.
ЗЫЗЫ. Кстати во всех ПИКах есть или хардварная И2С или софтварный вариант. А 755 или 775 (не помню точно) еще и УСБ тянет нормально...Я думал его как раз использовать как основной проц в декомпрессиметре, ну или как интерфейс с РС.
Последний раз редактировалось Lt_Flash 27-10-2005 22:01, всего редактировалось 1 раз.
PADI Advanced Open Water Diver
IANTD EANx Nitrox Diver
IANTD EANx Nitrox Diver
Это данные с суунты, или от нашего?
после 9 метров и не будет ничего показывать поскольку у нас условие в проге, что если безопасная парциалка меньше парциалки азота , то и нет никакого НДЛ, т.к ее на этой глубине ине достигнем никогда.
НДЛ надо показывать меньший из полученных, поэтому при С= -1 вывести в таблицу надо какоенибедь слово типа not exist
после 9 метров и не будет ничего показывать поскольку у нас условие в проге, что если безопасная парциалка меньше парциалки азота , то и нет никакого НДЛ, т.к ее на этой глубине ине достигнем никогда.
НДЛ надо показывать меньший из полученных, поэтому при С= -1 вывести в таблицу надо какоенибедь слово типа not exist
Последний раз редактировалось Листригон 27-10-2005 22:12, всего редактировалось 2 раза.
Если собираетесь регулировать РРО2 с точностью 0,01, то сдается мне, что точность измерения должна быть не хуже 0,005 бар.В общем назревает еще одна дискуссия - какая точность измерения PO2 приемлема для электроники ребризера...?
Так, что 10 разрядов будет наверное достаточно.
C Суунты данные есно.Листригон писал(а):Это данные с суунты, или от нашего?
после 9 метров и не будет ничего показывать поскольку у нас условие в проге, что если безопасная парциалка меньше парциалки азота , то и нет никакого НДЛ, т.к ее на этой глубине ине достигнем никогда.
НДЛ надо показывать меньший из полученных, поэтому при С= -1 вывести в таблицу надо какоенибедь слово типа not exist
PADI Advanced Open Water Diver
IANTD EANx Nitrox Diver
IANTD EANx Nitrox Diver
Еще проверил, не вижу изьянов, кажется можно пить много пива.