27 МОСКОВСКАЯ ВСТРЕЧА
Форум самогонщиков Сайт Барахолка Магазин 27 МОСКОВСКАЯ ВСТРЕЧА

Регулятор напряжения и тока на Arduino Pro Mini

Форум самогонщиков Автоматика
1 ... 21 22 23 24 25 26 27 ... 58 24
sebra Куратор Республика Коми 147 85
Отв.460  18 Нояб. 17, 23:04
Как можно реализовать такое же управление в тестируемой мной прошивке?))IlyaSPb, 18 Нояб. 17, 22:20

Так же как и коллега bigson полагаю) прошивки думаю похожи.

Добавлено через 1мин.:

Вы добавили кириллицу, с другими доработками у вас, я думаю, проблем возникнуть не должно)
sevpro Доктор наук Worldwide 769 281
Отв.461  18 Нояб. 17, 23:30, через 26 мин
на сколько я понимаю, но могу ошибаться, на любом дисплее можно вывести кириллицу, используя необходимую библиотеку.IlyaSPb, 18 Нояб. 17, 22:20
Нет, не в любом, только в дисплее, котором есть таблица с кириллицей. Дисплеи выпускаются с разными национальными кодовыми таблицами. Тебе просто повезло.
Есть еще правда геморройный вариант русификации через пользовательские символы, но то на очень большого извращенца
mak Модератор Екатеринбург 6.3K 1.8K
Отв.462  19 Нояб. 17, 06:31
sevpro, символов пользовательских мало, реально изврат выходит
IlyaSPb Студент Санкт-Петербург 20 18
Отв.463  19 Нояб. 17, 12:29
символов пользовательских малоmak, 19 Нояб. 17, 06:31
читал про такой способ "русификации", точно извращение, да и памяти занимает...))
Tomat7 Магистр Черноморская губинния 236 138
Отв.464  19 Нояб. 17, 15:16
Пока клепал свой "прожект" - регулятор и прочее на одном Arduino Nano - вдруг осознал что регулятор мне мешает, в том смысле что наличие его кода в одном файле с остальными функциями "загрязняет" общий код и чисто зрительно напрягает. Для начала вынес его код в отдельный Tab (Ctrl-Shift-N), а потом и вовсе в отдельную библиотеку. В итоге, при использовании библиотеки текст скетча миниммален.

В приложенном файле сама библиотека с простым примером. В Arduino IDE добавляется как и другие библиотеки из zip-файла: menu Sketch->Include Library->Add .ZIP Library...

После установки библиотеки должен появится и пример: File->Examples->RegPower->RegLib-mini01.

Да, алгоритм регулирования от Chatterbox, за что ему большое спасибо.
Новый алгоритм от Sebra пока сам не проверял, но ему тоже отдельное спасибо.
Строит глазки
RegPower.zip 4.2 Кб
сообщения удалены (18)
Rtehnik Доктор наук Барнаул 551 162
Отв.465  20 Нояб. 17, 16:47
Я себе недавно такое чудо китайской инженерной мысли прикупил,6000 отсчётов в секунду, только непонятно можно ли ему доверять? С моим предидущим true rms мультиметром (выше в ветке показывал) показания расходятся, как и с показаниями на дисплее регулятора. 
2164AF7B-3CD3-48A2-BB0B-A3817B2CCD37.jpeg
2164AF7B-3CD3-48A2-BB0B-A3817B2CCD37.jpeg Регулятор напряжения и тока на Arduino Pro Mini. Автоматика.
сообщения удалены (7)
m16 Модератор Тамбов 1.9K 1K
Отв.466  21 Нояб. 17, 12:40
имеет смысл попробовать на момент записи в регистр отключить прерывания посмотреть будет ли значение скакатьmak, 21 Нояб. 17, 08:07
не правильно. OCR нужно загружать в теле прерывания а так же запускать таймер и запускать/останавливать ацп.
mak Модератор Екатеринбург 6.3K 1.8K
Отв.467  21 Нояб. 17, 12:43, через 3 мин
OCR нужно загружать в теле прерыванияm16, 21 Нояб. 17, 12:40
в АВРе из обработчика вызов не может быть сделан?
сообщение удалено
m16 Модератор Тамбов 1.9K 1K
Отв.468  21 Нояб. 17, 13:00, через 18 мин
Можно, но пока оставлю как есть.sebra, 21 Нояб. 17, 12:55
да не можно а нужно. эээээ....

OCR нужно загружать в теле прерыванияm16, 21 Нояб. 17, 12:40
от INT0 - синхронизации с сетью.

в АВРе из обработчика вызов не может быть сделан?mak, 21 Нояб. 17, 12:43
может, если в обработчике их разрешить. например после считывания значения  ацп я тут же разрешаю прерывания т.к. таймеру определён более высокий приоритет. а сумма квадратов считается по мере освобождения проца от прерывания таймера или от INT0

Скрытый текст
;******************************************************************************
ADC_:
      push_S
      push      tmpB

      in      C1l, ADCl
      in      C1h, ADCh

      inc      ct_conv

      SEI         // ВОТ ЗДЕСЬ

//*****************************************************************************//
// вычисление суммы квадратов напряжений SUMM = Uin1**2 + Uin2**2 +...+ UinN**2
// входное напряжение ацп  Uin = (ADC * Uref) / 1024
// Uref = 3290 mV  //  (Uref/1024)**2= 10,322 , округляем до 10
// UinN**2 = ADC * 10 * ADC
//*****************************************************************************//
   
      ldi_w      E0, 10
      mov_w      C0, E0

      mul_w            // dD = С1 * С0   ;ADC * 10
.........................
      mov_w      C0, D0

      mul_w            // dD = С1 * С0   ;ADC * 10 * ADC      
.........................
      add_d      dB, dD      ;SUMM = Uin1**2 + Uin2**2 +...+ UinN**2

      pop      tmpB
end_adc:   pop_S

      reti


;******************************************************************************

сообщения удалены (2)
mak Модератор Екатеринбург 6.3K 1.8K
Отв.469  21 Нояб. 17, 14:14
sebra, а оставить транс на входе, погрешность разве большая получается? тэн имеет более-менее стабильное сопротивление после прогрева как минимум.. симистор в целом тоже
sebra Куратор Республика Коми 147 85
Отв.470  21 Нояб. 17, 14:54, через 40 мин
sebra, а оставить транс на входе, погрешность разве большая получается?mak, 21 Нояб. 17, 14:14
Да, могу накидать ссылок за все существование ветки и я также измерял и китайцем и некитайцем, обсуждалось неоднократно. Точность при измерении на выходе выше чем при табличном варианте. У меня есть результат реальных измерений.
Если кто то предоставит реальные данные против на этом регуляторе то будем думать как жить дальше.
mak Модератор Екатеринбург 6.3K 1.8K
Отв.471  21 Нояб. 17, 15:10, через 17 мин
sebra, погоди, но тот же РМ2 измеряет напряжение на входе как я помню?
ну а на выходе +-1В
если конечно ничего не путаю
sebra Куратор Республика Коми 147 85
Отв.472  21 Нояб. 17, 15:48, через 39 мин
sebra, погоди, но тот же РМ2 измеряет напряжение на входе как я помню?
ну а на выходе +-1В
если конечно ничего не путаюmak, 21 Нояб. 17, 15:10

Да, все верно, для меня загадка как при таком способе +-1В. Отображает он только расчетное. Был бы на руках с удовольствием бы потестил что там у него на выходе в реале. Вероятно там другие коэффициенты в таблице или алгоритм другой в программе. Во всяком случае для себя пока нашел такое решение проблемы.

Добавлено через 2мин.:

m16, уже давно снимает с нагрузки напряжение и я так полагаю он всем доволен
mak Модератор Екатеринбург 6.3K 1.8K
Отв.473  21 Нояб. 17, 19:15
sebra, а если просто привести таблицу в соответствие?
m16 Модератор Тамбов 1.9K 1K
Отв.474  21 Нояб. 17, 19:25, через 10 мин
не получится ,поскольку синус сети далёк от идеала (сам наблюдал), а таблица считается , увы, для идеального синуса. я начал с таблицы , но меня не устроила большая разница между установленным и выходным напряжением 4-6в в диапазоне 50-220в.
sebra Куратор Республика Коми 147 85
Отв.475  21 Нояб. 17, 20:00, через 36 мин
sebra, а если просто привести таблицу в соответствие?mak, 21 Нояб. 17, 19:15

Честно говоря не знаю зачем акцентироваться на таблице, новый метод работает лучше. Делов то - перепаять один провод в схеме.
Bitner Научный сотрудник NN 941 411
Отв.476  21 Нояб. 17, 20:06, через 6 мин
А размерности не пробовал уменьшить до нормальных.
Зачем int ust_U = 0; если достаточно byte ?
и т.д. по тексту.

Оригинал
Скетч использует 6146 байт (20%) памяти устройства. Всего доступно 30720 байт.
Глобальные переменные используют 294 байт (14%) динамической памяти, оставляя 1754 байт для локальных переменных. Максимум: 2048 байт.

С напильником
Скетч использует 5598 байт (18%) памяти устройства. Всего доступно 30720 байт.
Глобальные переменные используют 280 байт (13%) динамической памяти, оставляя 1768 байт для локальных переменных. Максимум: 2048 байт.

з.ы. нонче не до железа, но проверю.

з.з.ы. Огрехи старого. В 64 кб надо было впихнуть 2 минуты женского голоса для танка.
1989. Жесть.
сообщения удалены (2)
IlyaSPb Студент Санкт-Петербург 20 18
Отв.477  21 Нояб. 17, 22:01
Всем привет!
По просьбе коллег, делюсь с Вами версией прошивки, собранной на основе прошивки "Регулятор тока на acs712 с предустановками и записью в память" написанной коллегой Sebra с дополнениями из кода, приведенным коллегой Bigson в этой теме.
Основное отличие от прошивки представленной в шапке данной темы заключается в том, что добавлена возможность внешнего управления регулятора тока, а именно "Разгон" и "Стоп". Имею в своем арсенале два ТРМа "Овен"... планирую с их помощью управлять регулятором тока. Также вместо ТРМов, в качестве термоконтроллера, узла контроля и регулировки отбора, можно использовать ту же Arduino))
Может найдутся люди у которых лежат и пылятся без дела терморегуляторы (и совсем не обязательно ОВЕНы), которых также, как и меня заинтересует возможность внешнего управления регулятором, реализованная в данной прошивке))
Прошивка русифицирована, фотографии приводил несколькими сообщениями выше))
Тестирования проводились на Arduino Pro Mini и Arduino UNO, работает стабильно.
m16 Модератор Тамбов 1.9K 1K
Отв.478  21 Нояб. 17, 22:08, через 8 мин
добавлена возможность внешнего управления регулятора тока, а именно "Разгон" и "Стоп"IlyaSPb, 21 Нояб. 17, 22:01
это релюшкой делается, мощность снаружи задать можно?
sevpro Доктор наук Worldwide 769 281
Отв.479  21 Нояб. 17, 22:23, через 15 мин
Честно говоря не знаю зачем акцентироваться на таблице, новый метод работает лучше.sebra, 21 Нояб. 17, 20:00
У меня таблица используется для начального выбора угла, а потом уже подгоняется точно. Скорость выхода на режим увеличивается