Перейти к содержимому

Фото
* * * * * 2 голосов

Радиокружок Forum.ee


  • Вы не можете создать новую тему
  • Please log in to reply
213 ответов в этой теме

#91 Akhenaton

Akhenaton
  • Постоялец
  • 8 041 сообщений

Отправлено 13 Март 2013 - 00:17

Sergio, хочу поставить катушку в параллель с пьезо-излучателем. Поэкспериментировать с резонансом. А то по формуле вычислить значение элементарно, но кто его знает - подойдет или нет.

Сообщение изменено: Akhenaton (13 Март 2013 - 00:20 )

  • 0

#92 Sergio

Sergio
  • Постоялец
  • 2 988 сообщений

Отправлено 13 Март 2013 - 00:30

Sergio, хочу поставить катушку в параллель с пьезо-излучателем. Поэкспериментировать с резонансом.

Это пищалка что-ли? Не знаю, с чем там можно экспериментировать, обычно на те, которые не содержат встроенного генератора, просто импульсы нужной частоты подаются. На резонансной частоте громкость наибольшая.
Конечно, хозяин - барин. Просто учти, что обычно диапазон подстраивания у катушек небольшой.
  • 0

#93 Akhenaton

Akhenaton
  • Постоялец
  • 8 041 сообщений

Отправлено 13 Март 2013 - 00:38

Sergio, ультразвук. Просто тут подсмотрел украдкой одну схемку. Автор схемы утверждает, что катушка в параллели на резонансной частоте ещё пуще увеличиает амплитуду. Вот и задумался.
  • 0

#94 Sergio

Sergio
  • Постоялец
  • 2 988 сообщений

Отправлено 13 Март 2013 - 00:41

Sergio, ультразвук. Просто тут подсмотрел украдкой одну схемку. Автор схемы утверждает, что катушка в параллели на резонансной частоте ещё пуще увеличиает амплитуду. Вот и задумался.

Ну если так, то экспериментируй. Хотя, правильнее наверно будет излучатель помощнее взять.
  • 0

#95 Akhenaton

Akhenaton
  • Постоялец
  • 8 041 сообщений

Отправлено 13 Март 2013 - 09:13

Если не сложно - можешь показать, где у нас (или на ебае) купить ? А то я в упор не вижу таких.
  • 0

#96 Sergio

Sergio
  • Постоялец
  • 2 988 сообщений

Отправлено 13 Март 2013 - 09:54

Если не сложно - можешь показать, где у нас (или на ебае) купить ? А то я в упор не вижу таких.

У нас вряд ли, не ходовой товар.
Например тут:
http://it.mouser.com...1yyx2clZ1yzop6r

Смотри децибеллы.

Ну и можешь поискать на
http://ee.farnell.com
https://www.elfa.se

И тому подобных сайтах по продаже компонентов.
  • 0

#97 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 502 сообщений
  • Откуда:Эстония, Таллин

Отправлено 13 Март 2013 - 09:57

Пьезопластина + катушка = вот нужная комбинация. Катушка определит амплитуду и частоту, пьезо даст резонанс т.к. представляет собой емкость. Можно подобрать экспериментально (катушку смотать не проблема). А можно купить готовую пищалку.
  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#98 Akhenaton

Akhenaton
  • Постоялец
  • 8 041 сообщений

Отправлено 13 Март 2013 - 20:58

Sergio, Я имел ввиду катушки подстроечные )))
Вырвиглаз, Вот мотать ничего не хотелось самому ) Ну да видать прийдется.

Возник вопросик иного рода: Кто-нибудь знает точный алгоритм downcast-а ? Т.е если например функция на вход принимает uint8_t (stm8) или unsigned char. Туда я помещаю число, которое заведомо не вмещается (500). Магическим образом значение переменной становится равной 194. Попробовал проделать такой же эксперимент в Dev-C++ и там получилось 244.
Компиляторы используют разные алгоримты ? Каков общий алгоритм ?

P.S Никаких ошибок или предупреждений не вылазит ни там ни там.
P.S Dev-C++ похоже просто выбросил старшие биты и был таков. Что случилось в СТМ ?

Сообщение изменено: Akhenaton (13 Март 2013 - 21:01 )

  • 0

#99 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 502 сообщений
  • Откуда:Эстония, Таллин

Отправлено 13 Март 2013 - 22:04

Черт его знает, что там в стеке повисло. Надо асм смотреть. Только не понятно - зачем? 500 явно в байт не влезет. Тут нужен хотя бы unsigned int. Или это такое увлечение - запутать мозги компилятору? )))
  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#100 Sergio

Sergio
  • Постоялец
  • 2 988 сообщений

Отправлено 13 Март 2013 - 22:10

Sergio, Я имел ввиду катушки подстроечные )))

Там же.

Возник вопросик иного рода: Кто-нибудь знает точный алгоритм downcast-а ? Т.е если например функция на вход принимает uint8_t (stm8) или unsigned char. Туда я помещаю число, которое заведомо не вмещается (500). Магическим образом значение переменной становится равной 194. Попробовал проделать такой же эксперимент в Dev-C++ и там получилось 244.
Компиляторы используют разные алгоримты ? Каков общий алгоритм ?

Насколько мне известно, такое неявное приведение типов зависит не только и не столько от компилятора, сколько от архитектуры. Т.е. общего алгоритма нет. Хотя, откуда 194 - без понятия.

Можешь вот это покурить, если интересно
http://ru.wikipedia..../Порядок_байтов

Сообщение изменено: Sergio (13 Март 2013 - 22:14 )

  • 0

#101 Akhenaton

Akhenaton
  • Постоялец
  • 8 041 сообщений

Отправлено 13 Март 2013 - 23:04

Или это такое увлечение - запутать мозги компилятору? )))

Не. Просто дебаггером смотрел - что происходит и наткнулся на это число. Стало интересно, откуда оно получилось. И вот я тута )))
Sergio, Ну и на этом спасибо :)
  • 0

#102 Akhenaton

Akhenaton
  • Постоялец
  • 8 041 сообщений

Отправлено 20 Март 2013 - 22:24

Хоть всем уже и надоел, но всё-таки спрошу. Я сделал PWM, но каким-то раком нестандартным. Хочется сделать по науке!? МК по прежнему STM8L.
Есть таймер TIM1, который поддерживает PWM. В упор не могу понять, как работать с каналами. Инициализировал и объявил 1-ый канал как выходной - OC1, присвоил ему режим работы PWM1. Что это физически значит ? Что должно теперь происходить ? Как вывести что-то на какую-нибудь ножку ? А то счётчик сам по себе считает

REFERENCE MANUAL зачитан до дыр, всё равно не понимаю.

Буду рад если поможете понять. Может что-то дополнительно почитать ?
  • 0

#103 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 502 сообщений
  • Откуда:Эстония, Таллин

Отправлено 20 Март 2013 - 22:30

//инитиализируем таймер с периодом 1000
  TIM1_TimeBaseInit(16, TIM1_COUNTERMODE_DOWN, 1000, 0);
//запускаем таймер
  TIM1_Cmd(ENABLE);
//конфигурируем канал 3 на работу с ШИМ
  TIM1_OC3Init(TIM1_OCMODE_PWM1, TIM1_OUTPUTSTATE_ENABLE,
			   TIM1_OUTPUTNSTATE_DISABLE, 0, TIM1_OCPOLARITY_HIGH,
			   TIM1_OCNPOLARITY_HIGH, TIM1_OCIDLESTATE_SET, TIM1_OCNIDLESTATE_SET);
Далее просто пишем:

void SetPwmDuty (u16 TIM1_Pulse)
{
 TIM1->CCR3H = (uint8_t)(TIM1_Pulse >> 8);
 TIM1->CCR3L = (uint8_t)(TIM1_Pulse);
}
Где TIM1_Pulse - длительность от 0 до 1000
  • 1
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#104 Akhenaton

Akhenaton
  • Постоялец
  • 8 041 сообщений

Отправлено 21 Март 2013 - 09:31

Вырвиглаз, Спасибо в очередной раз!

У меня сейчас примерно такая же конфигурация (чуть-чуть есть небольшие различия). Я просто не могу уловить - где мне результат забирать ? Из всех TIM1 регистров, изменяется только CNT, то есть каунтер. На ножку-то мой PWM каким образом выводиться будет ?

Или канал 3 - это и есть какая-то ножка ? В случае с ADC канал был ножкой, а тут на всех ногах - тишина. :(

Спасибо ещё раз!
  • 0

#105 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 502 сообщений
  • Откуда:Эстония, Таллин

Отправлено 21 Март 2013 - 09:37

На примере STM8S103
Прикрепленный файл  TIM1_PWM.png   71,23К   18 Количество загрузок
  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#106 Akhenaton

Akhenaton
  • Постоялец
  • 8 041 сообщений

Отправлено 21 Март 2013 - 10:20

ОК. Понял. Спасибо ещё раз большущее! Теперь хоть понятно где искать.
  • 0

#107 Akhenaton

Akhenaton
  • Постоялец
  • 8 041 сообщений

Отправлено 21 Март 2013 - 19:11

Всё. Разобрался таки! Канал 1 таймера 1 идёт на ножку PD2. Но, тут хитрость в том, что: 1) Вначале объявить PD2 - выходной ножкой, но это не так сложно. 2) Открыть вывод PWM с таймера на его каналы. Для этого есть специальная функция - TIM1_CtrlPWMOutputs(ENABLE); Без этих двух пунктов на ножке глухо, как в танке.

А так - очередной раз спасибо Вырвиглазу!
  • 0

#108 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 502 сообщений
  • Откуда:Эстония, Таллин

Отправлено 21 Март 2013 - 19:22

Да, я с L-серией не работаю. У меня S-ки все. Зато много ))
  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#109 Akhenaton

Akhenaton
  • Постоялец
  • 8 041 сообщений

Отправлено 22 Март 2013 - 00:31

Вырвиглаз, Ну, если вдруг когда-то прийдется и на L-ке что-то такое изобразить - то теперь известно, как ))
  • 0

#110 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 502 сообщений
  • Откуда:Эстония, Таллин

Отправлено 22 Март 2013 - 08:42

Да есть у меня парочка проектов, требующих нановаттной технологии в режиме сна. Но удивительно то, что пока и S-ки справляются. Батарейки 2032 хватает на 5-6 месяцев. Это меня устраивает.
  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#111 Akhenaton

Akhenaton
  • Постоялец
  • 8 041 сообщений

Отправлено 31 Март 2013 - 20:09

Возник вопросик по транзисторам. Имеется обычный биполярник BC337-40 на 0.8А. Есть микроконтроллер, с ножкой, на которой я имею PWM (читать выше, если интересно). Захотелось поднять это напряжение до 5В (есть такая ножка на плате отдельно). Ничего умнее не придумал, чем воспользоваться этим биполярником, как ключём. Собственно, проблема в том, что на нужной мне частоте (примерно 44,6 кГц) всё это дело благополучно висит на 5В и никакой генерации сигнала не идёт. Если снижаю частоту, то тогда начинает что-то появлятся. Пьезо-излучатель я всандалил в цепь коллектора. Не мудрствуя лукаво, на базу через 10 кОм-ный резистор (попробовал так же с 3,3 кОм - тоже самое) стал подавать этот самый PWM сигнал.

Ток коллектора не знаю - там стоит обычный пьезо ... и чёрт его пойми, как замерить адекватно потребляемый ток, но наверняка что-то из разряда десятка мА. Вопрос - что может быть не так ? Транзистор не может работать быстрее, чем сколько-то кГц (в даташите ничего схожего не нашёл) ? Или я подбираю резисторы слишком большого или наоборот слишком маленького номинала ?
Как починиться, короче говоря ? Спасибо!
  • 0

#112 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 502 сообщений
  • Откуда:Эстония, Таллин

Отправлено 31 Март 2013 - 20:15

Схему, пожалуйста!
Попробуй через 470-560 Ом базу открывать.
  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#113 Akhenaton

Akhenaton
  • Постоялец
  • 8 041 сообщений

Отправлено 31 Март 2013 - 20:28

Размещенное изображение
Не бейте ногами - рисую, как умею :lol: К сожалению, нет таких номиналов под рукой в данный момент. А как ты это вычислил так быстро ? Может ли в номинале базы быть проблема ?
  • 0

#114 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 502 сообщений
  • Откуда:Эстония, Таллин

Отправлено 31 Март 2013 - 21:42

3.3 вольта выдает контроллер. 0.7 падает на базе транзистора. остается 2.6 вольта. При токе 10мА это 260 Ом. Так что два по 1к параллельно можно попробовать. Будет примерно 5мА, этого хватит.
На счет пьезы, я уже говорил, что подавать на него надо 40-100 вольт. В данном случае надо подобрать индуктивность и включить параллельно. Тразистор надо брать хотя бы на 150 вольт.
  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#115 Akhenaton

Akhenaton
  • Постоялец
  • 8 041 сообщений

Отправлено 31 Март 2013 - 22:01

Вырвиглаз, Может мне такой экземпляр попался, но не жмёт он 3.3 никаким образом. Замерял и мультиметром и осциллографом - 2.97 примерно. Но это не суть важно.
Такая дурь (40-100 вольт) покаместь не нужна.

И всё-таки я немного не пойму чего-то по поводу этих 260 Ом или 500 Ом (два по 1к). Почему мы исходим из тока базы (каких-то мифических 5мА) ? Почему не учитываем коэффициент усиления по току (~ 200) ? Но всё равно - спасибо!
  • 0

#116 Вырвиглаз

Вырвиглаз

    Убийца травы

  • Постоялец
  • 15 502 сообщений
  • Откуда:Эстония, Таллин

Отправлено 01 Апрель 2013 - 09:19

Коэффициент усиления нужен только в случае линейного усиления. Точнее там сложная функция, но не важно. Для ключевого режима надо выбирать ток базы побольше. Чтобы как можно сильнее уплотнить P проводимость.
  • 0
Кто живет и грешит в Эстонии, тот опять родится в Эстонии.

#117 Akhenaton

Akhenaton
  • Постоялец
  • 8 041 сообщений

Отправлено 01 Апрель 2013 - 21:16

Вырвиглаз, А разве не надо ориентироваться на тот, график, что в даташите транзистора идёт - зависимость коэффициента усиления от тока коллектора ? А то что-то меня это всё смущает, поскольку где бы не читал про ключевой режим - везде про усиление тоже упоминают Размещенное изображение

А вообще, интересно, почему зависло на +5В ? Размещенное изображение
  • 0

#118 skill-A

skill-A

    Huge Cojones

  • Постоялец
  • 6 711 сообщений

Отправлено 01 Апрель 2013 - 21:26

с чего начать изучение электроники? c самого нуля

Spoiler

  • 0

улыбнись


#119 Sergio

Sergio
  • Постоялец
  • 2 988 сообщений

Отправлено 01 Апрель 2013 - 21:47

с чего начать изучение электроники? c самого нуля

Начинай с этого форума:
http://roboforum.ru/

есть скиллсы в программировании. в любом языке кроме си разбираюсь за 2 недели на вменяемом уровне.

В электронике то как раз C актуален, и будет актуален еще долго.
  • 1

#120 Akhenaton

Akhenaton
  • Постоялец
  • 8 041 сообщений

Отправлено 01 Апрель 2013 - 22:46

skill-A, radiokot.ru. Постоянно что-то интересненькое оттуда вычитываю. А так же - easyelectronics.ru (но тут больше упор на программирование-таки)
  • 1