Страница 4 из 8
Re: Вольтметр на контроллере ?
Добавлено: Вт фев 01, 2011 18:00:02
Soir
irtim писал(а):Собирал вольтметр на пике 676 для блока питания почти пол года назад, несмотря на простоту работает отлично. Сейчас появилась необходимость измерять напряжение более 30 в. Так как сам я в программировании полный ноль, может кто подшаманил и у кого-нибудь завалялась прошивка для этого вольтметра на больший диапазон измерения.
Прошивка тут ни при чем, все решается входным делителем напряжения.
Re: Вольтметр на контроллере ?
Добавлено: Вт фев 01, 2011 18:09:16
irtim
Soir писал(а):Прошивка тут ни при чем, все решается входным делителем напряжения.
Не так здесь все просто, дело именно в прошивке
Re: Вольтметр на контроллере ?
Добавлено: Вт фев 01, 2011 19:31:53
otest
Не так здесь все просто, дело именно в прошивке
на основании чего такие выводы?
Re: Вольтметр на контроллере ?
Добавлено: Вт фев 01, 2011 23:02:22
andrey_artemov
На второй странице данной темы выкладывал исходники этого вольтметра с русскими комментариями (своими), с моделью в протеусе, я их менял (исходники) для удобства разводки сегментов индикатора
Вот процедура из этого исходника для преобразования значения ацп в символы семисегментного индикатора
Т.к. Нужно изменить цифру 30 на нужную вам
Код: Выделить всё
//--------------------------------------------
// Преоброзование числа в семисигментный код
//--------------------------------------------
void HTO7S(unsigned int32 Num) {
unsigned int32 res;
// Первая цифра для индикации
Segment[0]=SegCode[30*Num/10230];
// Если первая цифра ноль, то её не выводим
if (Segment[0]==SegCode[0]) Segment[0]=SegCode[10];
// Вторая цифра для индикации
res = 30*Num%10230;
Segment[1]=SegCode[10*res/10230];
// Третья цифра для индикации
res=10*res%10230;
Segment[2]=SegCode[10*res/10230];
} // HTO7S()
Re: Вольтметр на контроллере ?
Добавлено: Ср фев 02, 2011 11:09:36
Soir
irtim писал(а):Не так здесь все просто, дело именно в прошивке
В моих прошивках верхний предел измеряемого напряжения кратный 10. То есть диапазон может быть 0-10, 0-100, 0-1000... определяется входным делителем (или усилителем для измерения напряжений в меньших диапазонах). Разбивка результата АЦП на отдельные разряды по сути такая же как и
andrey_artemov, но на шкалу 0-10.
У
andrey_artemov входным делителем, без изменение прошивки, можно менять диапазоны: 0-30, 0-300...
Конечно, зная верхний предел измеряемого напряжения, лучше использовать более низкий предел для получения большей точности измерения (здесь речь идет о программном задании предела). Например, если мы знаем, что измеряемое напряжение будет не выше 30V, то лучше использовать шкалу 0-30V. Так как при шкале 0-30V один шаг АЦП будет соответствовать 30/1024=0,029V, а при шкале 0-100 - 100/1024=0,097V и т.д. Поскольку формат отображения данных XX.X, то полученная таким образом дополнительная погрешность выливается в 0,1V.
Не нашел данных по погрешности самого АЦП по диапазону входного напряжения (в середине диапазона и по его краям), но думаю, что 29,9V точнее будут измерены на шкале 0-100V, чем на шкале 0-30V.
Re: Вольтметр на контроллере ?
Добавлено: Ср фев 02, 2011 16:18:16
jumbo
ну да лучше использовать прошивку на то напряжение которое будет измерятся
Re: Вольтметр на контроллере ?
Добавлено: Ср фев 02, 2011 16:28:14
irtim
andrey_artemov в какой программе можно изменить прошивку, в протеусе?
Re: Вольтметр на контроллере ?
Добавлено: Ср фев 02, 2011 23:31:17
andrey_artemov
В протеусе можно только посмотреть результат работы программы
Изменить текст программы можно в любом текстовом редакторе, но после изменения нужно откомпилировать программу в данном случае с помощью компилятора CCS для PIC, с его помощью получаем HEX файл и его записываем в контроллер или используем в протеусе.... Как-то так...
Re: Вольтметр на контроллере ?
Добавлено: Чт фев 03, 2011 14:16:34
irtim
andrey_artemov писал(а):В протеусе можно только посмотреть результат работы программы
Изменить текст программы можно в любом текстовом редакторе, но после изменения нужно откомпилировать программу в данном случае с помощью компилятора CCS для PIC, с его помощью получаем HEX файл и его записываем в контроллер или используем в протеусе.... Как-то так...
Изменить его так можно. Но что именно менять? Там одни сплошные цифры и буквы.
Re: Вольтметр на контроллере ?
Добавлено: Чт фев 03, 2011 18:50:20
Pavel_1978
irtim писал(а):andrey_artemov писал(а):В протеусе можно только посмотреть результат работы программы
Изменить текст программы можно в любом текстовом редакторе, но после изменения нужно откомпилировать программу в данном случае с помощью компилятора CCS для PIC, с его помощью получаем HEX файл и его записываем в контроллер или используем в протеусе.... Как-то так...
Изменить его так можно. Но что именно менять? Там одни сплошные цифры и буквы.

а это собственно и есть программа))
Re: Вольтметр на контроллере ?
Добавлено: Сб фев 05, 2011 00:01:25
vist1973
доброе время суток!
на просторах инета нашёл вот такую схемку в качестве индикатора используется LCD от нокии 3310.
собрал в железе работает нормально.
И вопросик прошивку кто нибудь может модернизировать чтобы добавить некоторые удобства.
Re: Вольтметр на контроллере ?
Добавлено: Сб фев 05, 2011 08:35:36
irtim
Может и мне кто поможет с прошивкой? Буду благодарен
Re: Вольтметр на контроллере ?
Добавлено: Сб фев 05, 2011 18:51:06
Сергей_74
vist1973 писал(а):доброе время суток!
на просторах инета нашёл вот такую схемку в качестве индикатора используется LCD от нокии 3310.
собрал в железе работает нормально.
в протеусе пишет что это демо прошивка.. можно фото получившегося девайса выложить..?
какие навороты тут еще можно добавить?? просто интересно
Re: Вольтметр на контроллере ?
Добавлено: Сб фев 05, 2011 19:37:00
vist1973
фотки макетки.
напряжение мерял до 15 вольт
ток вроде до ампера тоже корректен.
а хотелось бы добавить строку показаний тока в пике с задержкой хотябы на 5-10 сек (нужно для анализа работы устройства).
если можно то защиту по току(от 100 мА до 5-10А ) с выходом на отдельный вывод пика для управления силовым транзистором или реле.
и так ради интереса функцию показа мощности.
Re: Вольтметр на контроллере ?
Добавлено: Сб фев 05, 2011 19:46:49
Soir
irtim писал(а):Может и мне кто поможет с прошивкой? Буду благодарен
Надеюсь
andrey_artemov не против, я изменил прошивку согласно рекомендациям:
andrey_artemov писал(а):Нужно изменить цифру 30 на нужную вам
Теперь шкала на 100V.
Re: Вольтметр на контроллере ?
Добавлено: Сб фев 05, 2011 19:50:03
vist1973
чегото неприклеелось
Re: Вольтметр на контроллере ?
Добавлено: Сб фев 05, 2011 21:12:13
Сергей_74
vist1973 писал(а):фотки макетки.
Интересный вариант вольтамперметра получился, жаль что цифры очень мелкие, сделать бы еще шрифт крупнее было бы совсем хорошо

Re: Вольтметр на контроллере ?
Добавлено: Сб фев 05, 2011 21:36:53
vist1973
когда прибор рядом то нормально
тем более что индикаторы имеются да и PICи тоже.
только никак немогу освоить написание программ

Re: Вольтметр на контроллере ?
Добавлено: Сб фев 05, 2011 21:47:01
vist1973
хочу встроить в этот БП вместо стрелочных

Re: Вольтметр на контроллере ?
Добавлено: Сб фев 05, 2011 22:18:45
andrey_artemov
Я ж писал - прошивка не моя, просто я под себя её переделывал .....