roboforum.ru

Технический форум по робототехнике.

Звуковая карта для МиниБота и МиниБота-ПРО

Re: Звуковая карта для МиниБота и МиниБота-ПРО

Myp » 22 июл 2008, 11:37

без компараторов както ширше, чо запрограмил то и будет
а с компараторами выходит что функционал ограничен железной схемой

Re: Звуковая карта для МиниБота и МиниБота-ПРО

blindman » 22 июл 2008, 11:39

=DeaD= писал(а):Ну как-то выделять из общей дорожки нам звук надо ведь будет? Или только выстрелы распознавать собираемся? :crazy:

Это-то понятно. Но вот как именно определять что за звук слышим? БПФ делать? Не забываем, что память-то унас ограничена. Даже если разделять память с переменными, используемыми для файловой системы, имеем 2KiB максимум. Хватит, чтобы насэмплить 3 канала, и потом все это обработать? С 3 компараторами можно попытаться задержки считать аппаратно, и на их основе делать выводы. Супер-точность все равно не нужна

Добавлено спустя 1 минуту 24 секунды:
Myp писал(а):без компараторов както ширше, чо запрограмил то и будет
а с компараторами выходит что функционал ограничен железной схемой

Микрофоны будут заведены на АЦП. Програмь как хочешь

Re: Звуковая карта для МиниБота и МиниБота-ПРО

EdGull » 22 июл 2008, 11:39

Myp писал(а):без компараторов както ширше, чо запрограмил то и будет
а с компараторами выходит что функционал ограничен железной схемой

так компараторы-то у нас программные, те которые в меге внутри стоят

Re: Звуковая карта для МиниБота и МиниБота-ПРО

blindman » 22 июл 2008, 11:40

Неа. Он там всего один

Re: Звуковая карта для МиниБота и МиниБота-ПРО

Myp » 22 июл 2008, 11:42

я чото както не в курсах там в меге компараторов хватит на наши микрофоны то?

Re: Звуковая карта для МиниБота и МиниБота-ПРО

=DeaD= » 22 июл 2008, 11:47

Myp писал(а):я лично вобще хз зачем эта фича нужна...
разве что пищать громко а потом отражённый звук 3мя микрофонами ловить и на основании этого сразу строить примерный план окружающего пространства...

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

Добавлено спустя 32 секунды:
Myp писал(а):я чото както не в курсах там в меге компараторов хватит на наши микрофоны то?

Зачем компараторы то? Они своими прерываниями только попортят всё, надо в память писать тупо, а потом уже разбирать чего там написалось.

Добавлено спустя 1 минуту 5 секунд:
blindman писал(а):Это-то понятно. Но вот как именно определять что за звук слышим? БПФ делать? Не забываем, что память-то унас ограничена. Даже если разделять память с переменными, используемыми для файловой системы, имеем 2KiB максимум. Хватит, чтобы насэмплить 3 канала, и потом все это обработать? С 3 компараторами можно попытаться задержки считать аппаратно, и на их основе делать выводы. Супер-точность все равно не нужна

А вот это я пока х.з. как делать :) может быть и внешняя память пригодится :) я вообще пока только мысли высказываю.... :crazy:

Re: Звуковая карта для МиниБота и МиниБота-ПРО

FireFly » 22 июл 2008, 12:39

EdGull писал(а):я предлагал компараторы потому что считаю что ими быстрей пики звука вычислять
в смысле от куда быстрей сработало
но можно и без компараторов если хотите


я на внешних компараторах делал - неудобно
поэкспериментировал с АЦП - нормуль :)
микрофонов 3 шт, тока их разносить друг от друга довольно прилично нужно.

Re: Звуковая карта для МиниБота и МиниБота-ПРО

yakuzaa » 22 июл 2008, 14:22

EdGull писал(а):0. для начала заполни свой город
1. вот собери резисторный ковокс и прочувствуй разницу
2. с чего эт ты решил??? конкретные цены и объемы в студию!


собирал самую первую схему на Atmega32 - звучание не понравилось - тогда решил выдавать полученный байт с SD-шки в ШИМ (OC1a) - качество тоже не очень (все таки 11000 кГц звук)
тогда переделал всю котовасию на AT45DB161 - скорость у нее побыстрее - там не надо никакой Avrdos - просто читаю страницу памяти из Dataflash и отправляю ее в ШИМ и так далее - пока всю датафлешку не прочитаю - можно хоть до 44100 Гц частоту повысить - все только упирается в скорость аппаратного SPI, а он как вродь на 2 МГц работает.
в общем кому лень с датафлешкой возиться - вот функция для Баскома и AVRDOS + SD/MMC - выдает 8bit unsigned RAW файл в ШИМ:

Код: Выделить всёРазвернуть
Sub Say(byval Filename As String * 12 )
    Local Sample As Byte                                    ' Сэмпл
    Local Busy As Byte                                      ' Занято
    If Filename = "" Then Exit Sub                          ' если файлика нету - то выходим
    If Diskinitialized = True Then                          ' Диск доступен?
        Chdir ""                                           ' Да, двигаемся в поддиректорию, где файло лежит "SPEECH"
        Chdir "SPEECH"                                      '
        Filename = Filename + ".RAW"                        ' Полное имя файла с расширением
        Open Filename For Binary As #3                      ' Открываем файл
        While Eof(#3) <> 255                                ' Пока не достигнут конец файла...
            Get #3 , Sample                                 ' Достаем байт из файла
            Waitus 60                                            ' задержка для дискретизации (вспоминаем теорему Котельникова)
            Pwm1a = Sample                                  ' отправляем байтик в ШИМ
        Wend                                                '
        Close #3                                            ' Закрываем файл
    Else             
        Call Beep()                                         'если файла нету - бибикаем
    End If 
    Waitms 100
End Sub


Добавлено спустя 5 минут 57 секунд:
ну и естественно, в конфигурации Меги настраиваем таймер1:
Код: Выделить всёРазвернуть
Config Timer1 = Pwm , Prescale = 1 , Compare A Pwm = Clear Down , Pwm = 8


P.S.
Личные данные я заполнил
Последний раз редактировалось yakuzaa 22 июл 2008, 14:26, всего редактировалось 1 раз.

Re: Звуковая карта для МиниБота и МиниБота-ПРО

FireFly » 22 июл 2008, 14:24

:D даже знаю откуда взял

Re: Звуковая карта для МиниБота и МиниБота-ПРО

EdGull » 22 июл 2008, 14:28

а кто мешает постранично без AVR-DOS SD-card юзать?
я вон в вике даже всё готовое выложил

Re: Звуковая карта для МиниБота и МиниБота-ПРО

yakuzaa » 22 июл 2008, 14:28

FireFly писал(а)::D даже знаю откуда взял


проект Witnesscam - автор Alberto RicciBitti
только от проекта там уже ничего не осталось :D

была написана подпрограмма, которая произносит входное число (любое) - набирает звуки из DF
а на DF записаны звуковые фрагменты цифр 0-19, 20, 30...100, 200 и.т.д

Re: Звуковая карта для МиниБота и МиниБота-ПРО

blindman » 22 июл 2008, 14:34

yakuzaa писал(а):<skip>
можно хоть до 44100 Гц частоту повысить - все только упирается в скорость аппаратного SPI, а он как вродь на 2 МГц работает.
<skip>

Все упирается не в скорость SPI, а в частоту ШИМ

Re: Звуковая карта для МиниБота и МиниБота-ПРО

yakuzaa » 22 июл 2008, 14:34

EdGull писал(а):а кто мешает постранично без AVR-DOS SD-card юзать?
я вон в вике даже всё готовое выложил

постранично неинтересно - на то она и SD/MMC - что воткнул ее в комп и с файлом что-нить сделал
если уж постранично, то на dataflash - вот моя схемка:
Вложения
sch.jpg

Re: Звуковая карта для МиниБота и МиниБота-ПРО

EdGull » 22 июл 2008, 17:03

ладно, тему с dataflash закрыли
будет Sd-Card FAT16 и моно-ковоскс

Добавлено спустя 2 часа 11 минут 41 секунду:
blindman давай сверять схему
Вложения
SoundCard-1.GIF

Re: Звуковая карта для МиниБота и МиниБота-ПРО

blindman » 22 июл 2008, 17:09

1. Регулировка громкости, UART и I2C не подключены?
2. Зачем резистор и диод между RX и TX?


Rambler\'s Top100 Mail.ru counter