
Anon
24.12.2017
15:09:05
за книжку спасибо!

Василий
24.12.2017
15:10:18
Ну наверное надо пропорциональную составляющую увеличивать

metaclass
24.12.2017
15:10:20
добавить нелинейность, чтобы мертвую зону пропустить.

Google

metaclass
24.12.2017
15:10:30
на выходе

sifun
24.12.2017
15:12:50
нужно нормальные двигатели либо компенсацию
второй пид на двигатели

Anon
24.12.2017
15:17:22

metaclass
24.12.2017
15:18:52
http://engineeronadisk.com/V3/engineeronadisk-4081.gif
типа такой передаточной функции
if x<0 then y=x-80 else if x>0 then y=x+80;

Anon
24.12.2017
15:20:43
наверное не 0, а +/-2, иначе он на нуле стоять не будет
motorPower = Kp * error + Ki * errorSum * sampleTime - Kd * (currentAngle - prevAngle) / sampleTime;
if (2 < motorPower)
motorPower += (nSpeedMin - 5);
if (-2 > motorPower)
motorPower -= (nSpeedMin - 5);

metaclass
24.12.2017
15:30:37
и понемногу снижать Ki чтобы вышло из автоколебаний
вроде он за них отвечает

Anon
24.12.2017
15:36:00
не помогло :(

Google

metaclass
24.12.2017
15:36:24
автоколебания?

Anon
24.12.2017
15:37:27
там такое впечатление, что гироскоп либо глючит, либо ось х влияет, либо я его не там поставил. у меня он сверху стоит, а во всех примерах он был близко к колёсам
может в этом дело
робот уезжает слишком далеко всё время
кстати, заодно попробовал его выше сделать - точно не хватает мощи
пойду разбирать второй этаж

Кирилл
24.12.2017
15:43:05
Тогда дунно, это уже заморочки ведра, раз оно перехватывает управление дисплеями

Anon
24.12.2017
16:03:07
открутил второй этаж роботу. вроде из-за перекоса по оси х он глючит
вопрос - как убрать? чтобы только ось у давала вклад?
у робота колёса резиновые и чуть-чуть кривые, гироскоп высоко стоит. при движении он чуть-чуть переваливается со стороны на сторону и это сбивает программу с толку
пацаны!!! победа!!! оно заработало!!! :)

metaclass
24.12.2017
16:21:46
чо сделал?

Anon
24.12.2017
16:21:53
у меня с гироскопа х брался, вместо у
так в примере было

metaclass
24.12.2017
16:22:06
аааа

kaktys
24.12.2017
17:08:03

Raven
24.12.2017
17:10:11
Нашел применение старому нетбуку
Умные калонки Elenberg Eee PC Android ?

Кирилл
24.12.2017
17:32:19
??
можно вообще на шарик поставить

Batir
24.12.2017
19:48:35
Привет. У меня тоже нетбук валяется без дела

Google

Batir
24.12.2017
19:49:07
При загрузке Android-x86 экран гаснет
Показывает в начале консоль

Raven
24.12.2017
21:02:51
На голый диск ставил
Записывал на usb universal чтоле. Как-то так

Batir
25.12.2017
04:37:18
Разрешение экрана маленькое 1024х500~ .
На других ПК грузится

Raven
25.12.2017
04:53:37
У меня 1024х600 вроде
10 дюймов

Кирилл
25.12.2017
09:39:45
DMA1_Channel5->CMAR = (uint32_t) &DMABuffer[0];
DMA1_Channel5->CPAR = (uint32_t) &USART1->DR;
DMA1_Channel5->CNDTR = 10;
DMA1_Channel5->CCR = DMA_CCR4_MINC;
USART1->CR3 |= USART_CR3_DMAR;
NVIC_EnableIRQ (DMA1_Channel5_IRQn);
DMA_Cmd(DMA1_Channel5, ENABLE);
В итоге мк при получении байта болтается в прерывании юарта, в буфер ничего не ложится. Чяднт?
Канал дма тактируется, прерывание юарта на прием вкчено.
F100RB

Maxim
25.12.2017
09:55:42
Запрос DMA при получении байта включен? UART_DMACmd или что-то похожее. Выбранный канал может принимать запросы от UART-а?

Кирилл
25.12.2017
10:24:54
Да, все в норме. Разобрался, прерывание на прием юарта нужно отрубать, и кейл через одно место содержимое буферов кажет.

Martin
26.12.2017
10:57:37
Вопрос к тем, кто работал с AD7792. Каков должен быть порядок инициализации, и запуск измерения, внутреннего термодатчика?

Антон
26.12.2017
11:46:33
Здравствуйте. Подскажите это предохранитель?

shadowsoul
26.12.2017
11:47:32
геркон это
магнит поднеси - дзынькнет и замкнётся

Антон
26.12.2017
11:48:06
Спасибо. Так и думал,что не пред

Кирилл
26.12.2017
12:53:10
Что-то я туплю. Есть указатель на массив uint8, как записать туда uint16?

Google

kaktys
26.12.2017
12:56:06
Перекасти через разыменование поинтера
Или union

Admin
ERROR: S client not available

オレンジ
26.12.2017
12:58:04
Или 4 в 4?

Кирилл
26.12.2017
12:58:35
Простое обнуление буферов указателей

Alexey
26.12.2017
13:04:18
кастуй

Кирилл
26.12.2017
13:05:16
Каст же С++ вроде
Я на чистом пишу(стараюсь, по крайней мере)

Firelander
26.12.2017
13:05:52
Название типа в скобочках никто не отменял

Dmitry
26.12.2017
13:06:58
мне вообще кажется, что это в @supapro

Alexey
26.12.2017
13:11:46
(int16_t*)&array[offset]

Кирилл
26.12.2017
13:13:02
Когда-нибудь намылю себе веревку с мылом, но посею указатель и перезапишу дырками от бубликов

Человек-Даук
26.12.2017
13:15:15
я до сих пор боюсь коллизии RFID карточек и думаю: шо если в турникет или большую антенну попадет две-три карточки одновременно

Petr
26.12.2017
13:25:18

kiltum
26.12.2017
15:23:04

Egor
26.12.2017
15:59:12
https://www.chipdip.ru/product/irf9540n смотрю на характеристику "Пороговое напряжение на затворе: -4". Правильно ли я понимаю, что по идее, если мне не особо нужна скорость включения - можно управлять этим транзистором напрямую с atmega328p при напряжении питания 5в через ограничивающий ток резистор?

Google

Egor
26.12.2017
16:00:08
или все же лучше через транзистор или оптопару?
если это важно: питание от 3х баночной lipo батарейки, т.е. 11.1в

Evgeny
26.12.2017
16:02:24
Если коммутируешь мощную нагрузку и будешь медленно открывать, транзистор будет нагреваться в процессе открытия (имхо)

Maxim
26.12.2017
16:41:10
Тут это неверно или очень близко к неверному

Egor
26.12.2017
16:47:35
а, не, туплю, -4 значит что на 4 меньше чем на source, т.е. 11.1 - 4 = 7.1
т.е. чтобы он закрылся нужно больше 7.1в напряжение на затворе
что с мк конечно не сделать
еще вопрос новичка: а если p-mosfet постоянно пропускает через себя 2 - 3 А на 12В, нужно ли какое-то внешнее охлаждение для корпуса SO8? подходящих транзисторов вроде полно, но что-то меня терзают смутные сомнения, не начнет ли при таком напряжении-токе все это хозяйство адово греться?

Petr
26.12.2017
17:38:55
Ну открой дш, посмотри Rdson и посчитай сколько на нем падает

Bastad
26.12.2017
17:39:46

Egor
26.12.2017
17:43:01
0.02 Ом x 3 А = 0.06 Ватт, только я не знаю, много это или мало