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

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

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


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

#91 Дык

Дык
  • Постоялец
  • 10 897 сообщений
  • Откуда:/dev/null

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

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

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

  • 0

Вначале делаю, потом думаю :)


#92 Sergio

Sergio
  • Постоялец
  • 3 051 сообщений

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

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

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

#93 Дык

Дык
  • Постоялец
  • 10 897 сообщений
  • Откуда:/dev/null

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

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

Вначале делаю, потом думаю :)


#94 Sergio

Sergio
  • Постоялец
  • 3 051 сообщений

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

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

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

#95 Дык

Дык
  • Постоялец
  • 10 897 сообщений
  • Откуда:/dev/null

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

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

Вначале делаю, потом думаю :)


#96 Sergio

Sergio
  • Постоялец
  • 3 051 сообщений

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

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

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

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

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

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

#97 Вырвиглаз

Вырвиглаз

    Убийца травы

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

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

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

#98 Дык

Дык
  • Постоялец
  • 10 897 сообщений
  • Откуда:/dev/null

Отправлено 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 928 сообщений
  • Откуда:Эстония, Таллин

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

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

#100 Sergio

Sergio
  • Постоялец
  • 3 051 сообщений

Отправлено 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 Дык

Дык
  • Постоялец
  • 10 897 сообщений
  • Откуда:/dev/null

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

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

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

Вначале делаю, потом думаю :)


#102 Дык

Дык
  • Постоялец
  • 10 897 сообщений
  • Откуда:/dev/null

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

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

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

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

Вначале делаю, потом думаю :)


#103 Вырвиглаз

Вырвиглаз

    Убийца травы

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

Отправлено 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 Дык

Дык
  • Постоялец
  • 10 897 сообщений
  • Откуда:/dev/null

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

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

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

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

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

Вначале делаю, потом думаю :)


#105 Вырвиглаз

Вырвиглаз

    Убийца травы

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

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

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

#106 Дык

Дык
  • Постоялец
  • 10 897 сообщений
  • Откуда:/dev/null

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

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

Вначале делаю, потом думаю :)


#107 Дык

Дык
  • Постоялец
  • 10 897 сообщений
  • Откуда:/dev/null

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

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

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

Вначале делаю, потом думаю :)


#108 Вырвиглаз

Вырвиглаз

    Убийца травы

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

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

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

#109 Дык

Дык
  • Постоялец
  • 10 897 сообщений
  • Откуда:/dev/null

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

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

Вначале делаю, потом думаю :)


#110 Вырвиглаз

Вырвиглаз

    Убийца травы

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

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

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

#111 Дык

Дык
  • Постоялец
  • 10 897 сообщений
  • Откуда:/dev/null

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

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

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

Вначале делаю, потом думаю :)


#112 Вырвиглаз

Вырвиглаз

    Убийца травы

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

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

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

#113 Дык

Дык
  • Постоялец
  • 10 897 сообщений
  • Откуда:/dev/null

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

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

Вначале делаю, потом думаю :)


#114 Вырвиглаз

Вырвиглаз

    Убийца травы

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

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

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

#115 Дык

Дык
  • Постоялец
  • 10 897 сообщений
  • Откуда:/dev/null

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

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

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

Вначале делаю, потом думаю :)


#116 Вырвиглаз

Вырвиглаз

    Убийца травы

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

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

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

#117 Дык

Дык
  • Постоялец
  • 10 897 сообщений
  • Откуда:/dev/null

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

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

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

Вначале делаю, потом думаю :)


#118 skill-AB

skill-AB

    Huge Cojones

  • Постоялец
  • 9 702 сообщений

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

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

Spoiler

  • 0

летела жизнь в плохом автомобиле и вылетала с выхлопом в трубу


#119 Sergio

Sergio
  • Постоялец
  • 3 051 сообщений

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

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

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

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

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

#120 Дык

Дык
  • Постоялец
  • 10 897 сообщений
  • Откуда:/dev/null

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

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

Вначале делаю, потом думаю :)