Відповісти

Введіть повідомлення і натисніть Надіслати
Параметри

Назад

Огляд теми (нові повідомленні вгорі)

Вячеслав Азаров
2019-07-28 13:48:40
renoshnik пише:

... стаб. S2RA маркировка. кварц AN маркировка, точнее это сборка с тремя ножками (СМД). жаль измерить нечем...

Понятно. Хорошая маркировка, и счищать не нужно, что-бы интеллектуальную собственность не украли. smile Измерить можно программой Ардуинки и секундомером, только без использования системного таймера millis().

renoshnik
2019-07-28 13:00:22
Вячеслав Азаров пише:
renoshnik пише:

Столкнулся с таким вот явлением ....  sad

Ардуино ПроМини маркировка 5 Вольт 16 МГц.
Подключаю через адаптер USB to UART с питанием 5 Вольт, работает нормально.
Подключаю внешнее питание 5 Вольт прямо на Vcc тоже нормальная работа.

!!! Подключаю внешнее питание 7 - 9 Вольт на вход RAW и получаю Vcc = 3.3 Вольта  !!!

Это, что китайцы перепутали стабилизатор на плате ????

Скорее всего, или маркировку. А что на корпусе стабилизатора написано и какая частота кварца в реальности?


стаб. S2RA маркировка.

кварц AN маркировка, точнее это сборка с тремя ножками (СМД). жаль измерить нечем...

Вячеслав Азаров
2019-07-28 10:46:48
renoshnik пише:

Столкнулся с таким вот явлением ....  sad

Ардуино ПроМини маркировка 5 Вольт 16 МГц.
Подключаю через адаптер USB to UART с питанием 5 Вольт, работает нормально.
Подключаю внешнее питание 5 Вольт прямо на Vcc тоже нормальная работа.

!!! Подключаю внешнее питание 7 - 9 Вольт на вход RAW и получаю Vcc = 3.3 Вольта  !!!

Это, что китайцы перепутали стабилизатор на плате ????

Скорее всего, или маркировку. А что на корпусе стабилизатора написано и какая частота кварца в реальности?

renoshnik
2019-07-28 10:37:49

Столкнулся с таким вот явлением ....  sad

Ардуино ПроМини маркировка 5 Вольт 16 МГц.
Подключаю через адаптер USB to UART с питанием 5 Вольт, работает нормально.
Подключаю внешнее питание 5 Вольт прямо на Vcc тоже нормальная работа.

!!! Подключаю внешнее питание 7 - 9 Вольт на вход RAW и получаю Vcc = 3.3 Вольта  !!!

Это, что китайцы перепутали стабилизатор на плате ????

renoshnik
2019-07-20 19:56:16
Вячеслав Азаров пише:
renoshnik пише:

" Может у вас внутренний опорник неисправен? Или вы его неправильно измеряете, что он плывёт? "
Врятли... контролирую мультиметром и реальные значения всегда соответствуют расчетным ref_volt (Vcc) ...

Тогда осталось применить хрустальный шар.  smile

Вот это в тему....
Заблудился в трех соснах...

Вячеслав Азаров
2019-07-20 19:30:08
renoshnik пише:

" Может у вас внутренний опорник неисправен? Или вы его неправильно измеряете, что он плывёт? "
Врятли... контролирую мультиметром и реальные значения всегда соответствуют расчетным ref_volt (Vcc) ...

Тогда осталось применить хрустальный шар.  smile

renoshnik
2019-07-20 19:21:16

" Может у вас внутренний опорник неисправен? Или вы его неправильно измеряете, что он плывёт? "

Врятли... контролирую мультиметром и реальные значения всегда соответствуют расчетным ref_volt (Vcc) ...

Вячеслав Азаров
2019-07-20 18:58:50
renoshnik пише:
Вячеслав Азаров пише:

Приведение типов это не преобразование типов, с ним нужно острожно и со знанием сути. Возможно, это и есть ошибка.

Экспериментировал и с преобразованием типов... без результатов ....

Может у вас внутренний опорник неисправен? Или вы его неправильно измеряете, что он плывёт? А приведение типов? Лучше поставьте константу первой в выражении.

renoshnik
2019-07-20 18:47:05
Вячеслав Азаров пише:

Приведение типов это не преобразование типов, с ним нужно острожно и со знанием сути. Возможно, это и есть ошибка.

Экспериментировал и с преобразованием типов... без результатов ....

Вячеслав Азаров
2019-07-20 18:29:17
renoshnik пише:

Мельком взглянул но это не то... Посмотрите ту ссылку, что у меня или мой пост №9 я описал способ измерения... Про пульсации и наводки тут речи нет (пока). Во всех результатах опорное напряжение Vcc измеряется с достаточной точностью но почему-то не получается реализовать корректировку измеряемого напряжения аккумулятора.

Главное, обычно, между строк. Я вам дал подсазку. Математически, в программе, всё верно.

Вячеслав Азаров
2019-07-20 18:18:01

Приведение типов это не преобразование типов, с ним нужно острожно и со знанием сути. Возможно, это и есть ошибка.

renoshnik
2019-07-20 18:04:21
Вячеслав Азаров пише:

Нет не читал. Я уже как-то давал ссылку на хорошую статью, но не для AVR. Вот она: https://www.st.com/content/ccc/resource … 211314.pdf Здесь много полезного по этой теме.

Мельком взглянул но это не то...

Посмотрите ту ссылку, что у меня или мой пост №9 я описал способ измерения...

Про пульсации и наводки тут речи нет (пока).
Во всех результатах опорное напряжение Vcc измеряется с достаточной точностью но почему-то не получается реализовать корректировку измеряемого напряжения аккумулятора.

renoshnik
2019-07-20 17:59:56

Вот тут измеряем " известного напряжения " внутренний источник = 1.1 Вольта

uint32_t Ref_zamer()  {
	ADC = 0;	ADMUX = 0x4E;				// ref = Vcc , input = 1.1V (VBG)	
	for (uint16_t n = 0; n < 256; n++ ) { ADCSRA |= (1<<ADSC);  
			while (bit_is_set(ADCSRA, ADSC));	data_rf += ADC; } 
	data_rf >>= 4;				  			// 16368 full scale 14bit  *** ОВЕРСЕМПЛИНГ
  return data_rf;  }

в качестве опорного напряжения используем Vcc .
соответственно если мы знаем напряжение источника 1.1 В, то можем рассчитать реальное значение Vcc

	ref_volt = (VBG * 16368L)/(float)data_rf;					//	Vcc

После этого измеряем напряжение от аккумулятора на входе А3, в качестве опорного напряжения используем Vcc

uint32_t Volt_zamer()  {	Ref_zamer(); 
	ADC = 0;	ADMUX = 0x43;           	// ref = Vcc , input = A3	
	for (uint16_t n = 0; n < 256; n++ ) { ADCSRA |= (1<<ADSC);  
			while (bit_is_set(ADCSRA, ADSC));	data_v += ADC; } 
	data_v >>= 4;  							// 16368 full scale 14bit  *** ОВЕРСЕМПЛИНГ	
  return data_v;  }

после этого для вычисления значения напряжения используем ранее вычисленное реальное значение Vcc в качестве опорного.

v_bat = (((float)data_v * ref_volt) / 16368L) * R_kft;		//	Vin

+++++++++++++++++++++++++++++++++++++

по идее при изменении Vcc корректировка в расчетах должна происходить автоматически но это не так...

Вячеслав Азаров
2019-07-20 17:59:55

Нет не читал. Я уже как-то давал ссылку на хорошую статью, но не для AVR. Вот она: https://www.st.com/content/ccc/resource … 211314.pdf Здесь много полезного по этой теме.

renoshnik
2019-07-20 17:44:20
Вячеслав Азаров пише:
renoshnik пише:

... Проблема в том, что по идее при ИЗМЕНЕНИИ опорного напряжения (выбрано Vcc) значения измерения входного напряжения от аккумулятора НЕ должны меняться...  А вот этого как раз и не происходит...

Опорное, это то на что опираются - известная константа. На основании её вычисляют все поправки. Изменили опорное - напряжение получли другой результат. Разобраться в этих трёх соснах не так уж и сложно.  При питании АЦП не от опоного источника, требется измерение известного напряжения Vref, с получением какого-то результата ADref и пересчёте: Vsig = Vref * ADsig / ADref, где Vsig - искомое напряжение сигнала а ADsig - понятно. Это без учета делителей и поправок. Всё очень просто.

Это понятно...
В первом сообщении есть ссылка на статью (уверен вы её уже когда-то читали).

Перед измерением напряжения АКБ в программе измеряется напряжение внутреннего источника (1.1 В) по результату рассчитывается
Vcc которое и используется как опорное напряжение.
По идее при изменении Vcc при расчете напряжения аккумулятора должна автоматически производиться корректировка...
а этого не происходит....

Підвал форуму