Универсальная схема для построения измерительных устройств
|
|
Iron_Gans | Дата: Среда, 18.09.2013, 22:50 | Сообщение # 801 |
Группа: Front-rank users
Сообщений: 37
| MACTEPok, спасибо, завтра попробую. А вот скажите пожалуйста, в прошлый раз Вы выложили исходники прошивки. Файл Темп_темп_DS18B20.bas я смог открыть в текстовом редакторе (встроенный в Тотал Коммандер). Я так понимаю это и есть файл прошивки в котором задаются команды для контроллера (те же миллисекунды между опросами, к примеру). Вот ежели я сам там чегонибудь изменю, то каким программным продуктом потом конвертировать мой файл скажем *.txt в пригодный для прошивки *.hex?
|
|
| |
MACTEPok | Дата: Четверг, 19.09.2013, 07:40 | Сообщение # 802 |
Группа: Управляет МК
Сообщений: 351
| Код написан в среде Bascom. Самому редактировать этот исходник не советую. Оптимальное время опроса датчиков уже подобрано. Меньше не вижу смысла.
|
|
| |
Iron_Gans | Дата: Пятница, 20.09.2013, 09:50 | Сообщение # 803 |
Группа: Front-rank users
Сообщений: 37
| Да это я так, для самообразования так сказать.... надо же над собой расти... :) Добавлено (20.09.2013, 09:50) --------------------------------------------- Отчитываюсь по работе последней прошивки для двух DS18B20: в целом все замечательно Была пара зависаний - после нескольких часов работы датчик, что показывает отрицательную температуру (сунул его в морозилку), стал показывать 0 градусов. Открыв морозилку и погрев датчик пальцами показания нормализовались. Не могу сказать что виновата прошивка, скорее всего сам датчик подглючивает.
С вольтметром тоже более менее все приземлил - поигрался номиналами резисторов в делителе + повесил кондер по входу измеряемого напряжения. Показания стоят почти ровно, скачут на одну десятую туда-сюда, но это же не лабораторный вольтметр, так что терпимо. Немного смущает что делитель все равно не правильный получается, если ставить те номиналы что по изначальной схеме положены - не работает. У меня получается 1кОм к измеряемому напряжению (+11...15В) и 47кОм на землю, на входе АЦП при этом 1,1-1,5В
|
|
| |
MACTEPok | Дата: Пятница, 20.09.2013, 16:41 | Сообщение # 804 |
Группа: Управляет МК
Сообщений: 351
| Делитель напряжения вольтметра нужно настраивать на месте по показаниям эталонного вольтметра(мультиметра) Мелькание последнего разряда индикатора зависит от стабильности питающего МК напряжения, тк оно есть опорное для АЦП.
|
|
| |
Iron_Gans | Дата: Пятница, 20.09.2013, 18:59 | Сообщение # 805 |
Группа: Front-rank users
Сообщений: 37
| не ну я в итоге настроил, просто смущает что плечи делителя совсем другие
Сообщение отредактировал Iron_Gans - Пятница, 20.09.2013, 19:03 |
|
| |
MACTEPok | Дата: Пятница, 20.09.2013, 19:51 | Сообщение # 806 |
Группа: Управляет МК
Сообщений: 351
| пропорция есть пропорция. Формулу расчета делителя посмотрите в инете, абсолютные значения резисторов могут быть любыми. Но сильно завышать значения не советую, тк суммарный ток через делитель будет снижаться --> показания будут нестабильными.
I=U/R = 12/52000 = 0,23 mA P=UI = 12* 0,00023 = 0,0028 Вт
Сопротивление резисторов смд: 0.125-0.25 Вт Ток можно поднять раз в 10
Сообщение отредактировал MACTEPok - Пятница, 20.09.2013, 19:58 |
|
| |
Iron_Gans | Дата: Пятница, 20.09.2013, 20:45 | Сообщение # 807 |
Группа: Front-rank users
Сообщений: 37
| Да вот в том то и прикол, что при моем делителе напряжение на входе АЦП должно быть порядка 9-11В, однакож работает, зараза... И напряжение на PC4 нормальное в пределах 1-1,5В в зависимости от того что на входе. Ну да Бог с ним. Вы мне лучше помогите настроить канал давления. Сегодня пол дня монстрячил конструкцию чтобы подать на датчик реальное давление в пределах 0-5 кг/см2 Сделал, подключил. Получается что схема в целом занижает на порядка 02,-0,3 атмосферы. Подстроечником R4 подтягиваю показания до соответствия механическому манометру и в итоге при сбросе давления нет нуля - так и остается показывать 0,2. Колупался где то с часа два, пока дети из школы не пришли, потом отложил. Чешу репу. Возможно конечно что мех.манометр врет, но мало вероятно. Завтра возьму другой с ним попробую... На всякий пожарный прикладываю схему канала давления, она у меня такая же как и рекомендовано, в этот раз без изысков:
Да, чуть не забыл: операционник питается от стабилизированных 9 вольт - через КРЕНкуДобавлено (20.09.2013, 20:45) --------------------------------------------- УПС, пока набирал текст не заметил что вы откорректировали свой пост. Просто я специально старался ток через делитель задать как можно меньше. Видимо поэтому так и получилось ибо иначе тока бы совсем не хватало для нормальной работы. Завтра переиграю делитель этот...
Сообщение отредактировал Iron_Gans - Пятница, 20.09.2013, 20:42 |
|
| |
sg | Дата: Суббота, 21.09.2013, 18:36 | Сообщение # 808 |
Группа: Пользователи
Сообщений: 3
| Девайс конечно очень полезный, за что большое спасибо автору!!! Не сочтите за наглость, но хотелось-бы сделать приборчик контроля и управления микроклимотом в помещении- температура (DS18B20), влажность (H25K или SYH-1) Было-бы не плохо и контролировать уровень СО с последующим открыванием - закрыванием форточки (вентиляции) Как вариант индикации 2-3 строчный LCD или, что ещё лучше монохромные дисплеи от старых мобилок Nokia - они очень дешовые. Буду очень благодарен, да и не только я.
|
|
| |
Iron_Gans | Дата: Воскресенье, 22.09.2013, 09:31 | Сообщение # 809 |
Группа: Front-rank users
Сообщений: 37
| sg, вот, посмотрите варианты схем, там есть и с датчиком влажности: http://c2.at.ua/3m/S_V_A/s_VA_akV.gif
А на 5ой странице форума, в сообщении № 164, есть схема подключения DS18B20 Делаете один канал для влажности (PC5), второй для DSки (PC4) и говорите автору где у вас чего и что собственно нужно от прошивки.
Уважаемый MACTEPok, в Вашей статье ( http://c2.at.ua/load....-1-0-72 ) есть таблица с прошивками, у меня такой вопрос: там у температурных прошивок какой датчик используется? Аналоговый? Прошивок под DSки в той таблице нет? Да и собственно в картинке с вариантами входных схем DSок тоже нет... Это я к чему: может дополните когда время найдете?
Сообщение отредактировал Iron_Gans - Воскресенье, 22.09.2013, 09:36 |
|
| |
MACTEPok | Дата: Воскресенье, 22.09.2013, 14:01 | Сообщение # 810 |
Группа: Управляет МК
Сообщений: 351
| Статью оформляю не я, а модератор. Добавлять в таблицу прошивки уже бесполезно. Их накопилось очень много, пользователи постоянно придумывают новые алгоритмы под себя. Поэтому лучше оставить их на форуме с описанием.
|
|
| |
C@at | Дата: Воскресенье, 22.09.2013, 14:52 | Сообщение # 811 |
Группа: Hegemoniс
Сообщений: 12345714
| Да, у этой разработки вариантов реализации уже прямо немыслимо , вот в этом форуме http://c2.at.ua/forum/2-53-1 было начало сбора исходников на базе этой измерительной схемы, но это-ж надо чтобы кто-то фиксировал и описывал конечный вариант. Но не только тут, а во всем интернете так , если проблемы пишем, а как побороли проблемы, так и черкнуть пару строк становится некогда, не то что упорядочнить файлы и описать что к чему, поэтому и найти нужное не так просто. Я например сейчас, не вникаю на каком этапе готовности находится та или иная программа, а нужно чтобы все финальные варианты попадали сюда http://c2.at.ua/forum/2-53-1 . Iron_Gans, вы достигли нужного результата? Если да, запостите его сюда http://c2.at.ua/forum/2-53-1, и может, еще что там нужное вам попалось, я не против. Учтите, что придя на этот форум в очередной раз, среди тысячи сообщений этой ветки вы может и посты свои не найдете, а в той ветке более просторно пока.
Всемирное признание пУТИН ХУЙЛО http://uk.wikipedia.org/wiki/ Россия, при нынешнем президенте, источник войны и терроризма. ПРЕЗИРАЮ.
|
|
| |
Iron_Gans | Дата: Воскресенье, 22.09.2013, 19:35 | Сообщение # 812 |
Группа: Front-rank users
Сообщений: 37
| Цитата (C@at) Iron_Gans, вы достигли нужного результата? Пока не достиг т.к. выходные провел с семьей, а не с паяльником Единственное что сделал вечером в пятницу так это собрал новую схему опрессовки датчика с двумя мех. манометрами и выяснил что у двух имеющихся у меня в наличии датчиков давления ММ393А разное сопротивление при 0кгсм2. У одного 300 Ом ровно, а у другого 320. Возможно у второго датчика будет немного другая характеристика зависимости R от P и это позволит мне выставить нормальный 0 и достигнуть точности показаний не хуже чем 0,1кс/см2
Сообщение отредактировал Iron_Gans - Воскресенье, 22.09.2013, 19:36 |
|
| |
Iron_Gans | Дата: Понедельник, 23.09.2013, 13:29 | Сообщение # 813 |
Группа: Front-rank users
Сообщений: 37
| Поковырялся сейчас с устройством, для удобства настройки немного видоизменил схему поставив второй переменник в ОС (временно):
Получилась такая зависимость: Давление Показания Сопротивление устройства датчика 0 0-0,1(скачут) 309 0,5 0,4 278 (289) тут поясню: была разбежка в показаниях мех. манометров замерил 2 сопротивления когда один показывал 0,5 и потом когда второй показал 0,5 1,0 0,9 250 1,5 1,4 218 2,0 2,0 187 2,5 2,5 159 3,0 2,9 143 3,5 3,3 132 4,0 3,6 116 4,5 3,9 105 5,0 4,1 95
В принципе, мне все равно как будет врать схема при измерении давлений больше чем 3кг/см2 т.к. все что больше этого значения явно достаточно для работы двигателя При нулевом давлении напряжение на ноге PC5 контоллера составляет 4,78В, а для устойчивых показаний нуля нужно 4,85В. Если я переменниками выставляю 0 (4,85В на РС5), то вся схема начинает врать в минус на 0,2...0,3кг/см2 и вот это победить ну никак не удается - либо точность измерений, либо нулевые показания при нулевом давлении. Что делать не знаю уже... Добавлено (23.09.2013, 13:29) --------------------------------------------- Уважаемый MACTEPok, а можно прошивкой это дело поправить? Чтобы нулем было 4,75В на входе АЦП, а дальше все так же как обычно?
Сообщение отредактировал Iron_Gans - Понедельник, 23.09.2013, 12:40 |
|
| |
Iron_Gans | Дата: Понедельник, 23.09.2013, 17:33 | Сообщение # 814 |
Группа: Front-rank users
Сообщений: 37
| Да, забыл! Прошивка вот эта у меня:
|
|
| |
MACTEPok | Дата: Понедельник, 23.09.2013, 19:43 | Сообщение # 815 |
Группа: Управляет МК
Сообщений: 351
| да, только программно и лечится
|
|
| |
MACTEPok | Дата: Понедельник, 23.09.2013, 20:04 | Сообщение # 816 |
Группа: Управляет МК
Сообщений: 351
| Iron_Gans, В исходнике найдешь место, где изменения сделал.
|
|
| |
Iron_Gans | Дата: Вторник, 24.09.2013, 09:25 | Сообщение # 817 |
Группа: Front-rank users
Сообщений: 37
| Цитата (MACTEPok) Iron_Gans, В исходнике найдешь место, где изменения сделал. Ага, спасибо, нашел
Сегодня прошьюсь и по результатам отпишусь
Добавлено (24.09.2013, 09:25) --------------------------------------------- Прошился. Не помогло. 0 настроился на 4,72В но все остальные измерения так же линейно подвинулись вниз и соответственно накачав 3 атмосферы пришлось потенциометром ОС подкорректировать показания. При сбросе давления на устройстве вместо нуля было 0,2.
Что сделал: Взял изначальную (первичную) прошивку... Chvar_1 = Ch1 Chvar_2 = Ch2 Start Timer0 : Start Timer1 Any_var = Chvar_1 / 2000 ' 2000 - можно задавать изгиб линии Any_var = Negativ * Any_var ' Если закоментировать, изменим направление изгиба экспоненты Any_var = Exp(any_var) Chvar_1 = 1023 - Chvar_1 Chvar_1 = Chvar_1 / 12.786 'пересчет тут любая формула для требуемого диапазона или необходимой характеристики ============== Any_var = Chvar_1 * Any_var Chvar_1 = Any_var
...и подправил значения на такие:
Chvar_1 = Ch1 Chvar_2 = Ch2 Start Timer0 : Start Timer1 Any_var = Chvar_1 / 2000 ' 2000 - можно задавать изгиб линии Any_var = Negativ * Any_var ' Если закоментировать, изменим направление изгиба экспоненты Any_var = Exp(any_var) Chvar_1 = 999 - Chvar_1 ' на шару поставил 999, для пробы - посмотреть что изменится Chvar_1 = Chvar_1 / 12 'пересчет тут любая формула для требуемого диапазона или необходимой характеристики ============== Any_var = Chvar_1 * Any_var Chvar_1 = Any_var
В итоге получилась зависимость: Давление на манометрах Показания Устройства 0,0 0,0 0,5 не проверял т.к. 2 манометра по разному показывают и какой из них врет не понятно 1,0 0,9 1,5 1,4 2,0 2,0 2,5 2,5 3,0 3,0 3,5 3,3 4,0 3,6
дальше не проверял. В общем, считаю работу удовлетворительной т.к. в диапазоне 0...3кг/см2 удалось добиться показаний не хуже чем +/-0,1 а все что выше 3х не грозит мотору масляным голоданием
Сообщение отредактировал Iron_Gans - Вторник, 24.09.2013, 09:26 |
|
| |
MACTEPok | Дата: Вторник, 24.09.2013, 09:40 | Сообщение # 818 |
Группа: Управляет МК
Сообщений: 351
| Дополните табличку зависимостью напряжения на входе АЦП от давления в обе стороны (понижение, повышение давления). Все указывает на то, что точность самого датчика плюс/минус лапоть. Что и не удивительно, при его конструкции.
|
|
| |
Iron_Gans | Дата: Вторник, 24.09.2013, 10:56 | Сообщение # 819 |
Группа: Front-rank users
Сообщений: 37
| Цитата (Iron_Gans) Дополните табличку зависимостью напряжения на входе АЦП от давления в обе стороны (понижение, повышение давления). Все указывает на то, что точность самого датчика плюс/минус лапоть. Что и не удивительно, при его конструкции. На повышение мне сложно т.к. нету способа дозировки давления. Я сначала компрессором давлю сколько получится (в районе 4 атм) а потом потихоньку стравливаю через резьбу... А датчик да, по конструкции так себе. Попозже дополню таблицу + хочу убрать переменник из конструкции - для машины и вибрации считаю их применение не очень подходящим.
|
|
| |
Iron_Gans | Дата: Вторник, 24.09.2013, 15:40 | Сообщение # 820 |
Группа: Front-rank users
Сообщений: 37
| Доделал измерительную часть до конца (надеюсь), выбросил переменник, подобрал постоянные резисторы. По схеме получилось так:
Что по показаниям: Давление по манометру Показания устройства Напряжение на входе РС5 0 0 4,74 1,0 0,9 3,95 1,5 1,5 3,51 2,0 2,1 3,11 2,5 2,6 2,75 3,0 3,0 2,50 3,5 3,5 - 3,4 2,32 4,0 3,6 2,16
Замеры делал снижая давление с 4 атмосфер до нуля.
|
|
| |
uuu000 | Дата: Вторник, 24.09.2013, 20:15 | Сообщение # 821 |
Группа: Пользователи
Сообщений: 2
| Как сделать 2 вольтметра 0-5 вольт каждый?Какая прошивка в этом случае?
|
|
| |
Iron_Gans | Дата: Вторник, 24.09.2013, 21:58 | Сообщение # 822 |
Группа: Front-rank users
Сообщений: 37
| Цитата (uuu000) Как сделать 2 вольтметра 0-5 вольт каждый?Какая прошивка в этом случае? Посмотрите в изначальной статье, там есть прошивки вольты-вольты: http://c2.at.ua/load....-1-0-72
А у меня такой вопрос: как сделать чтобы вольтметр НЕ зажигал светодиод нагрузки в диапазоне 13,8 - 14,6В, а при всех остальных значениях (ниже 13,8 и выше 14,6) зажигал? Инверсией уставок? И еще момент. Ставлю я уставку включения по давлению на 0, а выключение на 0,8. Когда давление поднимается выше 0,8 светодиод гаснет, а когда давление опускается, то светодиод не зажигается пока значение не упадет до нуля. С одной стороны логика происходящего понятна, но это не то что хотелось бы видеть: хочется чтобы от 0 до 0,8 светодиод горел, но и при снижении ниже 0,8 опять зажигался, как этого достичь?
Сейчас по запарке полярность включения перепутал - минус 2 КРЕНки (на 5 и на 9 вольт), но МК не пострадал.... Видимо пора спать...
Сообщение отредактировал Iron_Gans - Вторник, 24.09.2013, 22:01 |
|
| |
MACTEPok | Дата: Среда, 25.09.2013, 07:05 | Сообщение # 823 |
Группа: Управляет МК
Сообщений: 351
| Цитата А у меня такой вопрос: как сделать чтобы вольтметр НЕ зажигал светодиод нагрузки в диапазоне 13,8 - 14,6В, а при всех остальных значениях (ниже 13,8 и выше 14,6) зажигал? Инверсией уставок? Инвертировать в коде условие для срабатывания канала нагрузки Load1 или Load2.
Цитата хочется чтобы от 0 до 0,8 светодиод горел, но и при снижении ниже 0,8 опять зажигался, как этого достичь? Это называется уставка без гистерезиса. В вашем случае условие одно: Д < 0.8 . а этой схеме, значит, устанавливаете минимальный гистерезис, On = 0.7 Off = 0.8
|
|
| |
Iron_Gans | Дата: Среда, 25.09.2013, 10:39 | Сообщение # 824 |
Группа: Front-rank users
Сообщений: 37
| Цитата (MACTEPok) Инвертировать в коде условие для срабатывания канала нагрузки Load1 или Load2.
Я правильно понимаю, что мне нужно сделать на канале напряжения (в моем случае Load 2) вот так:
Цитата (MACTEPok) В строках Код If Sostoyanie = 1 Then Set Load1 Else Reset Load1 и If Sostoyanie_2 = 1 Then Set Load2 Else Reset Load2
Заменить Set на Reset и наоборот.
|
|
| |
MACTEPok | Дата: Среда, 25.09.2013, 13:13 | Сообщение # 825 |
Группа: Управляет МК
Сообщений: 351
| Да, для строки с Load2
|
|
| |
Iron_Gans | Дата: Четверг, 26.09.2013, 13:26 | Сообщение # 826 |
Группа: Front-rank users
Сообщений: 37
| Изменил. Сделал вот так:
If Sostoyanie_2 = 1 Then Reset Load2 Else Set Load2 'управление 2м каналом нагрузки
но чтото не получается. ON2=13.8 OFF2=14.5 В итоге светодиод загорается при U>14.5 и гаснет при U<13.8 как будто я ON и OFF местами поменял, только и всего А мне фактически надо задать те же уставки ON2=13.8 OFF2=14.5 но инвертировать логический уровень на выходе МК. Если я вот тут 0 и 1 местами поменяю, будет толк?
If On2 < Off2 Then 'если уставка ON2 < OFF2 то режим нагревателя If Channel_2 <= On2 Then Sostoyanie_2 = 1 'если давление ниже уставки ON2, то включаем нагрузку №2 If Channel_2 >= Off2 Then Sostoyanie_2 = 0 'если давление выше уставки OFF2, то выключаем нагрузку №2
|
|
| |
MACTEPok | Дата: Четверг, 26.09.2013, 13:41 | Сообщение # 827 |
Группа: Управляет МК
Сообщений: 351
| Пробуй, логика в принципе простая. и комменты есть. Под себя легко можно адаптировать
|
|
| |
Iron_Gans | Дата: Четверг, 26.09.2013, 14:48 | Сообщение # 828 |
Группа: Front-rank users
Сообщений: 37
| Да чтото гляжу я в душу этому всему и понимаю что ничего у меня не выйдет: If On2 < Off2 Then 'если уставка ON2 < OFF2 то режим нагревателя If Channel_2 <= On2 Then Sostoyanie_2 = 1 'если давление ниже уставки ON2, то включаем нагрузку №2 If Channel_2 >= Off2 Then Sostoyanie_2 = 0 'если давление выше уставки OFF2, то выключаем нагрузку №2 Else 'если уставка ON2 > OFF2 то режим охладителя If Channel_2 >= On2 Then Sostoyanie_2 = 1 'если давление выше уставки ON2, то включаем нагрузку №2 If Channel_2 <= Off2 Then Sostoyanie_2 = 0 'если давление ниже уставки OFF2, то выключаем нагрузку №2 End If
Мне же хочется чего:
Если значение ниже уставки ON2, то включаем нагрузку, если значение выше уставки ON2, то выключаем нагрузку; Если значение выше уставки OFF2, то включаем нагрузку, если значение ниже уставки OFF2, то выключаем нагрузку.
Таким образом, получается что фактически я хочу аж целых 4 уставки с малым гистерезисом на второй канал, а этого данная прошивка и не обещала даже. А с тем что имеется я могу зажигать светодиод либо при аварийном снижении напряжения, либо при аварийном превышении, но никак не в обоих этих случаях, т.е. либо сигнализация о снижении U ниже 13,8В (а при 13,9 уже отключение сигнала), либо сигнализация о превышении U выше 14,5В, (а при снижении ниже 14,4 отключение сигнала).
|
|
| |
MACTEPok | Дата: Четверг, 26.09.2013, 15:04 | Сообщение # 829 |
Группа: Управляет МК
Сообщений: 351
| If Channel_2 >= On2 AND Channel_2 <= Off2 Then Sostoyanie_2 = 0 ELSE Sostoyanie_2 = 1
|
|
| |
Iron_Gans | Дата: Четверг, 26.09.2013, 15:19 | Сообщение # 830 |
Группа: Front-rank users
Сообщений: 37
| Цитата (MACTEPok) If Channel_2 >= On2 AND Channel_2 <= Off2 Then Sostoyanie_2 = 0 ELSE Sostoyanie_2 = 1 Просто добавить в управление уставками или этим надо заменить кусок кода?
|
|
| |
MACTEPok | Дата: Четверг, 26.09.2013, 15:23 | Сообщение # 831 |
Группа: Управляет МК
Сообщений: 351
| вместо того, что писали выше
|
|
| |
Iron_Gans | Дата: Четверг, 26.09.2013, 15:44 | Сообщение # 832 |
Группа: Front-rank users
Сообщений: 37
| Дадада, я уже понял Более того, прошил и проверил, все работает на ура! Большое спасибо! Сейчас сеть развиснет, выложу этот кусок кода (у меня Bascom удаленно стоит)Добавлено (26.09.2013, 15:44) --------------------------------------------- Вот так:
If On1 < Off1 Then 'если уставка ON1 < OFF1 то режим нагревателя If Channel_1 <= On1 Then Sostoyanie = 1 'если значение первого канала АЦП ниже уставки ON1, то включаем нагрузку №1 If Channel_1 >= Off1 Then Sostoyanie = 0 'если значение первого канала АЦП выше уставки OFF1, то выключаем нагрузку №1 Else 'если уставка ON1 > OFF1 то режим охладителя If Channel_1 >= On1 Then Sostoyanie = 1 'если значение первого канала АЦП выше уставки ON1, то включаем нагрузку №1 If Channel_1 <= Off1 Then Sostoyanie = 0 'если значение первого канала АЦП ниже уставки OFF1, то выключаем нагрузку №1 End If
If Sostoyanie = 1 Then Set Load1 Else Reset Load1 'управление 1м каналом нагрузки
If On2 < Off2 Then 'если уставка ON2 < OFF2 то режим нагревателя If Channel_2 >= On2 And Channel_2 <= Off2 Then Sostoyanie_2 = 0 Else Sostoyanie_2 = 1 End If
If Sostoyanie_2 = 1 Then Set Load2 Else Reset Load2 'управление 2м каналом нагрузки
Loop
То что красным курсивом забыл удалить.... В остальном все работает прекрасно, большое спасибо!
|
|
| |
Iron_Gans | Дата: Четверг, 26.09.2013, 19:37 | Сообщение # 833 |
Группа: Front-rank users
Сообщений: 37
| Все, я похоже закончил свою эпопею с устройством, MACTEPok, огромное вам спасибо! Раз 5-7 прогнал блоком питания диапазон от 12 до 15Вольт (и вверх и вниз), уставки срабатывают ровно так как мне того и хотелось, осталось только внедрить это все в автомобиль.
Выкладываю текст куска прошивки, отвечающего за сигнализацию (позволил себе внедрить туда свой коммент):
If On1 < Off1 Then 'если уставка ON1 < OFF1 то режим нагревателя If Channel_1 <= On1 Then Sostoyanie = 1 'если значение первого канала АЦП ниже уставки ON1, то включаем нагрузку №1 If Channel_1 >= Off1 Then Sostoyanie = 0 'если значение первого канала АЦП выше уставки OFF1, то выключаем нагрузку №1 Else 'если уставка ON1 > OFF1 то режим охладителя If Channel_1 >= On1 Then Sostoyanie = 1 'если значение первого канала АЦП выше уставки ON1, то включаем нагрузку №1 If Channel_1 <= Off1 Then Sostoyanie = 0 'если значение первого канала АЦП ниже уставки OFF1, то выключаем нагрузку №1 End If
If Sostoyanie = 1 Then Set Load1 Else Reset Load1 'управление 1м каналом нагрузки
If Channel_2 >= On2 And Channel_2 <= Off2 Then Sostoyanie_2 = 0 Else Sostoyanie_2 = 1 'если параметр ниже значения ON2 или выше значения OFF2, то включаем нагрузку
If Sostoyanie_2 = 1 Then Set Load2 Else Reset Load2 'управление 2м каналом нагрузки
Loop
Ну и до кучи прикрепляю архив с исходниками и hex, может кому сгодится:
Сообщение отредактировал Iron_Gans - Четверг, 26.09.2013, 19:38 |
|
| |
Leoton | Дата: Пятница, 27.09.2013, 15:15 | Сообщение # 834 |
Группа: Пользователи
Сообщений: 15
| Добрый день! Нашел эту статью замечательную, за что вам и спасибо, MACTEPok, и решил соорудить указатель температ-давления на основе DS18B20. Всё получилось с первого раза! Всё работало при подключении от блока питания, но как только я подключил схему к машине, она поработала секунд 10 потом всё замигало и начали гореть все сегменты! Я не сильно в программировании разбираюсь, подскажите что это может быть? МК "ласты пришли" или другое что-то?
|
|
| |
Iron_Gans | Дата: Пятница, 27.09.2013, 17:28 | Сообщение # 835 |
Группа: Front-rank users
Сообщений: 37
| Leoton, а что у вас с питанием? Стабилизатор жив?
|
|
| |
Leoton | Дата: Пятница, 27.09.2013, 18:02 | Сообщение # 836 |
Группа: Пользователи
Сообщений: 15
| Да стабилизатор жив. На МК подается 5в.
|
|
| |
Iron_Gans | Дата: Пятница, 27.09.2013, 19:27 | Сообщение # 837 |
Группа: Front-rank users
Сообщений: 37
| Цитата (Leoton) Да стабилизатор жив. На МК подается 5в. Возможно при включении зажали нечаянно кнопочку выбора и МК сменил тип индикатора (как вариант) После инцидента в машине дома не включали от БП? При работе от блока питания все нормализовалось или по прежнему кракозябры??
|
|
| |
Leoton | Дата: Пятница, 27.09.2013, 20:00 | Сообщение # 838 |
Группа: Пользователи
Сообщений: 15
| Цитата (Iron_Gans) Возможно при включении зажали нечаянно кнопочку выбора и МК сменил тип индикатора (как вариант) Пробовал. Ничего не влияет.Цитата (Iron_Gans) После инцидента в машине дома не включали от БП? При работе от блока питания все нормализовалось или по прежнему кракозябры?? Включал от блока, всеравно светятся все сегменты. Думаю может МК нечаянно дотронулся до ВВ провода свечи. Я под капотом подключал, чтобы проверить, ну и близко провод оказался. Может он "вырубил" МК, когда там импульс проходит? МК статики боятся? Если да, то как можно проверить работоспособность контроллера?
|
|
| |
Iron_Gans | Дата: Пятница, 27.09.2013, 23:27 | Сообщение # 839 |
Группа: Front-rank users
Сообщений: 37
| Цитата (Leoton) Если да, то как можно проверить работоспособность контроллера? Суньте в программатор, попробуйте по новой прошить. Если не получится то все, алес.
|
|
| |
Leoton | Дата: Суббота, 28.09.2013, 11:13 | Сообщение # 840 |
Группа: Пользователи
Сообщений: 15
| попробую, но это только на работе.
|
|
| |