Всем привет!
Извините, пожалуйста, за язык. Что то не так пошло.
Все таки, вопрос в силе остается.
Можете дать ответ?
Напишите, пожалуйста. Потому, что я вижу, что этот форум живет своей жизнью, как некоторые уже остыли несколько лет тому.
Поэтому и обращаюсь с просьбой.
Человек стремиться к науке - это очень хорошо!
Ну так вот, даже на схеме, которую мы обговариваем
http://radiokot.ru/circuit/digital/measure/68/01.gif, вход один, а расделений на каналы, 2. Неужели все делает стабилитрон на 8.2В? А если он сгорает? ведь мы подаем до 100 В на канал!. Внизу по схеме у нас резисторы гасят напряжение, а вверху - ? Или зачем думать сгорит или не сгорит?
Как работать должна программа в этом случае?
Код: Выделить всё
Если напряжение < 10В - первый канал АЦП
иначе - второй канал АЦП
Правильно я понимаю?
Если правильно, то есть еще вопрос:
теория говорит о расчете простого делителя наряжения, здесь не совсем простой. Как на этой схеме расчитывалась формула вывода на LCD?
Приведу свой пример, где на схеме простой делитель из сопротивлений 30 и 1.6 кОм - это для измерения напряжения:
Код: Выделить всё
#define U_REF 5.12
#define ADC_MAX 1023
#define COEFFICIENT ( float )( U_REF / ( ADC_MAX + 1 ) )
#define DIVIDER_U_R1 30 // kOhm
#define DIVIDER_U_R2 ( float )1.6 // kOhm
#define DIVIDER_I_R1 3 // kOhm
#define DIVIDER_I_R2 1.5 // kOhm
#define GAIN_U ( float ) ( ( DIVIDER_U_R1 + DIVIDER_U_R2 ) / DIVIDER_U_R2 ) // Gain voltages for voltage measurement
#define GAIN_I ( float )( 1 + DIVIDER_I_R1 / DIVIDER_I_R2 ) // Gain voltage for current measurement
// This relationship of formulas
// ADC_MAX = 1024 * U_MAX / U_REF = 1023; U_MAX = 1023 * U_REF / 1024 => ADC = 1024 * U_measurement / U_REF; U_measurement Є [ 0 .. U_MAX ]
#define REAL_COEFFICIENT_VOLTAGE ( float )( COEFFICIENT * GAIN_U ) // = 0,09875 - Dependence on resistive voltage divider
#define REAL_COEFFICIENT_CURRENT ( float )( COEFFICIENT / GAIN_I ) // ~=0.0050049 R = U / I, 1A = 0.1V, So we have to measure up to 50A
Здесь есть приатачен рисунок делителя
Этот код я описал сам, исходя из всякой разной теории, которую нашел в просторах. Может гдето неточности? Про float не нужно, знаю...
Вывод на экран получаем формулу: ADC * REAL_COEFFICIENT_VOLTAGE = значение в вольтах.
Но есть сложные схемы - с гальванической развязкой. Да и эта схема уже не простая.
Как в вашей схеме работает программа по отношению к резистивному делителю?