Технический форум по робототехнике.
blindman » 06 июл 2008, 21:43
Программа точно будет на C
EdGull » 06 июл 2008, 22:22
ну и кто ты после этого?
blindman » 07 июл 2008, 12:35
Нефиг расслабляться
Посылку отправил
- Вложения
-
EdGull » 07 июл 2008, 13:06
сенкс, я седня тоже после работы заеду на почту индикаторы с собой еще с пятницы тоскаю
EdGull » 07 июл 2008, 19:02
собственно сама квитанция
- Вложения
-
blindman » 12 июл 2008, 21:06
Итак по порядку.
- Сначала о качестве распознавания. По пятибальной шкале я бы поставил 4 с минусом. Односложные слова достаточно уверенно различает только если они различаются гласной. Важно стараться говорить с одинаковой интонацией и громкостью при обучении и распознавании. С многосложными словами процент ошибок меньше, но при этом надо следить не только за громкостью и интонацией, но и за соотношением громкости между ударным и неударным слогом. При удачном выборе команд и небольшой практике можно добиться уверенного распознавания.
- Как все это выглядит с технической стороны. Микрофон электретный, такие используются в сотовых телефонах и гарнитурах, радиотрубках. К микросхеме подключается статическое ОЗУ рамером 8 KiB типа 6264. Можно также использовать 62256 (32 KiB), по ногам совместимо, будет использоваться только на 25%. Из пассивных компонентов - 5 резисторов и столько же конденсаторов. Кварц на 3.58 МГц. Для связи с МК используются 8 линий - 4 управляющих, и 4 - двунаправленная шина данных. При выключении питания записанные команды естественно пропадают, поэтому их надо скидывать в энергонезависимую память - флэш-память контроллера, внешнее ПЗУ, карту памяти... Даташит не говорит ничего о том, сколько занимает одна команда. Эксперементально установлено, что не больше 240 байт. Если брать с запасом 256 байт, то получается на 40 команд 10KiB.
- Теперь о неприятных вещах. Даташит похоже писался пьяными китайцами, причем левой ногой. Столько ляпов, неточностей и просто нечитаемого текста в одном документе - такого еще поискать надо. Но это не самое худшее. Разработчики микросхемы на позаботились об обработке ошибочных ситуаций. Например, если попытаься прочитать из нее шаблон команды , которая не была записана, микросхема тупо виснет, переставая реагировать на команды. То же самое присходит при обучении, если длина команды превышает максимально допустимую. Очень неприятно, хотя и преодолимо, если при возникновении таких ситуаций просто вырубать, а затем включать питание МС. Коряво, конечно, но другого выхода нет. Судя по той немногочисленной информации, что мне удалось найти, к такому же выводу пришли и другие.
И еще одно неприятное обстоятельство - микросхема эта больше не выпускается
На фотке моя тестовая установка. Завтра попробую сделать видео, где можно будет увидеть и услышать, как я рулю сервой силой
мысли , то есть голоса
Когда приведу в божеский вид документацию, выложу все в вику
- Вложения
-
EdGull » 12 июл 2008, 21:22
А ты не думал подключить к HM2007 вместо ОЗУ Мегу?
Написать для Меги код эмулирующий работу ОЗУ, а уже к Меге подключить SD-карт.
С выходом этого всего счастья на уарт и/или и2ц.
Помоему это упростит всё на свете.
blindman » 12 июл 2008, 21:42
Еще один телепат
Думал, и до сих пор думаю. Интерфейс I2C это само собой. Карточка не нужна, если писать в флэш контроллера. Посчитаем ноги:
12 - шина адреса ОЗУ
8 - шина данных ОЗУ
2 - управляющие сигналы ОЗУ
8 - управление микросхемой
2 - I2C
Итого 32 - как раз мега16/32. Одна нога не хватает однако
Чтоб питанием микросхемы дергать. А у меня еще в планах и ЦАП туда цеплять, чтобы можно было аудио гнать по радиоканалу. Без радио никак не обойтись - если только не бегать за ботом с микрофоном на кабеле
поправился - не АЦП, а ЦАП
EdGull » 12 июл 2008, 21:52
а может не париться и мегу128(64) поставить?
чё ужиматься-то?
да и ЗигБя (c) твоя любомая как тогда в тему там ляжет...
З.Ы. У буржуинов же есть XBee? А у нас будет ЗигБя (с)
blindman » 12 июл 2008, 21:56
Шина адреса даже 13 а не 12 - так что ваще никак. Лепить туда мегу64/128 из-за пары лишних ног смысла не вижу. И ОЗУ в любом случае нужно - какая разница где оно будет, в контроллере или снаружи. Так что, не вариант, получается. И ставить радиомодуль напосредственно на эту схему не хочется
EdGull » 12 июл 2008, 21:59
эт зачем еще там озу если у нас есть SD?
Заодно будет сетевой массив данных на 2 гектара
blindman » 12 июл 2008, 22:06
Цикл доступа к памяти у микрухи 200нс. И писать данные она начинает сразу как только включен режим распознавания, даже если ничего не произносить. По всей видимости, кольцевой буфер. А как только голос утих, начинает читать. И как ты собираешься с карточкой обеспечить время доступа 200нс? Просто эмуляция памяти потребует писать все на ассемблере, и не факт что удастся - на 16 МГц цикл у меги 62.5 нс.
EdGull » 12 июл 2008, 22:22
да тупанул, думал у М128 8 кило своего озу
blindman » 12 июл 2008, 22:27
Да даже если б и 8 было - а переменные где держать? Да и если эмуляцию делать, то на прерывании, а только вход в прерывание займет минимум 7 циклов. За это время шина уже освободится.
EdGull » 12 июл 2008, 22:39
т.е даже с внешним озу не прокатит...
Добавлено спустя 46 секунд:а ты уверен что там такая скорость записи у HM2007в озу?