Технический форум по робототехнике.
Акелла » 21 окт 2017, 21:16
А что за uduino такая чтото в поиске хрень выдает.
Angel71 » 21 окт 2017, 21:23
и на нескольких страницах подряд ни одной левой ссылки
https://www.crowdsupply.com/uduino/uduino
Акелла » 21 окт 2017, 21:44
18$ на краудфундинге? Чтото дороговато. Подожду клонов от братьев азиатов.
А пока есть необходимость оживить/сделать новый контролер.
Устройство должно цеплятся к 4S lipo в торце примерно 40х50мм в размере, и все это будет упралять грелкой.
По проэкту купил себе карбоновые автомобильные жопогрейки, и пришил себе к мото - куртке. Питать от мота не планирую, мощности генератора не хватит.
Выше я задавал вопрос как можно сделать монитор заряда аккумулятора? Подскажите как это сделать.
Добавлено спустя 9 минут 50 секунд:Angel71 писал(а):и на нескольких страницах подряд ни одной левой ссылки
Angel71 » 21 окт 2017, 21:55
espruino ещё больше стоит. только есть сомнения, что у вас даже без учёта времени дешевле выйдет одну штуку сделать.
если понимать буквально "монитор заряда", тогда на ацп измеряется напряжения аккумулятора. а с грелкой... как бы не полностью схему переделывать, хотя дело ваше.
Акелла » 21 окт 2017, 22:04
Там в коде есть монитор напряжения он даже в серийный порт выдает текущее напряжение. Только я не пойму как сделать чтобы дуина шла спать или вырубала ШИМ и не давала запустится пока напряжение не будет выше например 12.5в при достижении напряжения например 12в при 4S lipo.
Печатку я делаю дома сам, времени уходит не много, я больше трачу время на поиски того как сделать, и еще больше пытаясь разобраться почему не работает.
Angel71 » 21 окт 2017, 22:13
отключается шим, мониторится напряжение, при достижении 12.5в включается шим, в чём загвоздка? можно прерывание настроить, мегу в сон, а компаратор будит. можно мегу в сон, периодически просыпаться, смотреть напряжение и или опять спать или включать шим. можно мегу выкинуть и на рассыпухе сделать.
Акелла » 21 окт 2017, 22:17
Angel71 писал(а):можно мегу выкинуть и на рассыпухе сделать.
А это уже интересно, можете на салфетке схемку накидать, если не сложно?
Angel71 » 21 окт 2017, 22:27
для шима использовать можно 555 таймер (с или без обратной связи для регулировки температуры) или ещё что. мониторинг, допустим на оу/компараторах или специализированных микросхемах.
Акелла » 21 окт 2017, 22:42
Температуру регулировать не нужно, при макс токе в 2.5А и
грелки в 30ватт она нагревается до ~40С +там вшито какойто резюк что не дает перегреватся.
Шимо я планирую уменьшать нагрев если не требуется много.
Главный вопрос состоит как сделать LVD, у меня есть
такой но в нем нет шим контролера и он большой по размеру..
Angel71 » 22 окт 2017, 06:24
хоть не на лампах.
если совсем скучно, можно и в одной микросхеме поискать шим с компаратором и прочими плюшками, всяких микросхем для питания полно. или сразу упростить себе задачу и поставить мелкую деталюшку, которая при проседании напряжения цепь размыкать будет. примерно так
это всего-лишь один из вариантов. у крупных производителей различных деталюшек для питания иногда далеко не десятки, заходите на офсайт и изучаете. power/battery management, supervisors, voltage detectors/protections/monitor,... выбираете, что подходит по функционалу, параметрам, доставабельности, корпусу, цене, что дальше по схеме хотите поставить и т.д.
заодно на будущее хоть немного кругозор расширете.
Акелла » 22 окт 2017, 19:27
спасибо за советы.
По своей схеме выше, заменил регуль ams1117 на 7805 (ТО220), поставил новую ардуину, всё заработало, волны на шиме пропали, квадраты теперь ровные.
Вопрос по коду так остался открытым, как сделать, при достижении низкого заряда на батареи гасить шим =0, и не давать ему стартовать?
Angel71 » 23 окт 2017, 11:44
- Код: Выделить всё • Развернуть
ison = false;
_ison = false;
setup()
{
pwmoff();
}
loop()
{
if (voltage > minvolt)
_ison = true;
else
_ison = false;
if (_ison != ison)
{
ison = _ison;
if (ison)
pwmon();
else
pwmoff();
}
}
- Код: Выделить всё • Развернуть
ison = false;
pwmoff();
loop()
{
if (voltage > minvolt)
{
if (!ison)
{
ison = true;
pwmon();
}
}
else
{
if (ison)
{
ison = false;
pwmoff();
}
}
}
Акелла » 24 окт 2017, 10:44
Спасибо,
а что за команда такая ison? ниже выдало кучку ошибок.
error: 'pwmoff' was not declared in this scope
pwmoff();
note: in expansion of macro 'MIN_VOLT'
if (voltage > MIN_VOLT)
error: expected primary-expression before ')' token
if (voltage > MIN_VOLT)
'ison' does not name a type
Angel71 » 24 окт 2017, 12:30
- Код: Выделить всё • Развернуть
bool ison = false;
float voltage = 0.0f;
float minvolt = 0.0f;
void pwmon(){}
void pwmoff(){}
void setup()
{
pwmoff();
}
void loop()
{
if (voltage > minvolt)
{
if (!ison)
{
ison = true;
pwmon();
}
}
else
{
if (ison)
{
ison = false;
pwmoff();
}
}
}
к561ЛА7 » 02 мар 2018, 14:05
в атмеге 8 ацп преобразование
- Код: Выделить всё • Развернуть
ADMUX=0b01100000; // выставляем номер канала(младщие биты) и режим источника опорного напряжения
ADCSRA.6=1; // запускаем АЦП преобразование
//ADCSRB&=0xF8;
while(ADCSRA.4==0);// ждем пока появится влаг завершения ацп преобразования
a[5]=ADCH; // присваиваем переменной a1 знкачение старщего регистра где храниться результат ацп
зашибись работает
в атмеге 2560
в выражениях ADCSRA.6=1;
и while(ADCSRA.4==0);//
пишет что левая сторона после точки требует страк\юнион
компилятор CVAVR
чего это может быть ?