|
Выбор, подборка ПЛИС под задачу, Помогите разобраться...) |
|
|
|
Sep 21 2010, 10:12
|

Местный
  
Группа: Свой
Сообщений: 479
Регистрация: 8-03-10
Из: Россия, Москва
Пользователь №: 55 849

|
Цитата(Andrew34 @ Sep 21 2010, 06:49)  Привет BarsMonster!) ИМХО - это проблема! На каком легкодоступном контроллере можно сварганить длительности импульсов и задержек в 100-500 мкс и + сделать оч короткие фронты 10-100 нс ?
topicstarter считает что предпочтительней то - что легче реализовать... По поводу фронтов: если для 4х импульсов сделать фиксированными фронты (первые 3 по 1-10мкс, а 4й 10-100 нс) то этого будет достаточно... Нужно будет лишь играться длительностью импульсов и задержками между ними... не знаю тольк посредством чего..
По поводу МСU, ну от него нужно сперва отследить раскрутку зеркала до 30 тыс. оборотов, откл. двигатель, а потом пуститть 4 импульса 100мкс - это ж черепашья скорость, тут вообще любой МК прокатит с частотой 5-10Мгц и выше, с кварца тактуем и готово. После скоростного буфера(Обычная 16-и ногая ТТЛ-совместимая микруха последних серий, вроде LVC) у Вас получатся фронты порядка 1нс. Непосредственно на выводы земли и питания буфера (ну и МК само собой) - обязательно керамика 0.1мкф выводы как можно короче, а то шум по всей плате будет. Раз менять крутизну фронтов не надо, то все эти полевики/мульиплексоры не понадобятся, просто после буфера резистор последовательно, и конденсатор от выхода резистора до земли, номинал подбираем (10нф и ниже).
Сообщение отредактировал BarsMonster - Sep 21 2010, 10:17
--------------------
|
|
|
|
|
Sep 21 2010, 14:16
|

Гуру
     
Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514

|
Цитата(Andrew34 @ Sep 20 2010, 23:05)  2= "nastraivat' PLIS po dlitel'nosti ne problema, menyaem schet i vse" -
т.е. реализовать импульсы с длительностями 200-550мкс и интерактивно играться с этими длительностями с некоторой точностью (с некторым шагом изменения по времени, например 10 мкс) посредством НАПРИМЕР контроллера+клавиатуры (по нажатию соотвествующ. кнопок, контроллер будет дёргать плис) ВОЗМОЖНО ? (Хотя я пока себе это смутно представляю, с архитектурой ПЛИС я пока не на ты) в ПЛИС реализован счётчик, считающий (делящий) на некоторое значение. Это значение можно записать в созданный в ПЛИС регистр. Зная частоту генератора, задаем делитель "на ходу" По поводу реализации всех этих вещей читаем любой освоябельный xHDL (для Altera - AHDL, VHDL, Verilog - Quartus это все кушает) Цитата(Andrew34 @ Sep 20 2010, 23:05)  3= a vot fronty u EPM7xxx mozhno izmentit' tol'ko pri proshivke, vystavlyaa "slow_slew_rate" dlya konkretnyh pinov
Теперь о фронтах. Я так понял вы имеете ввиду что нельзя интерактивно играться длительностью фронтов (т.е. как зашили такой и будет фронт). Что значит выставляя "slow_slew_rate" что это за среда разработки для плис (урок китайского продолжается!)? Дайте ПОЖАЛУЙСТА наводку: ссылки на интернет-ресурсы,на книги, просто названия книг... Это о Quartus. Там есть такой параметр. Читать - поищите в разделе по ПЛИС, там много раз приводились ссылки на литературу Цитата(Andrew34 @ Sep 20 2010, 23:05)  и что значит для конкретных пинов, т.е. именно с ЭТИХ пинов будет фронт соответсв. длительности? Именно, для конкретного пина Цитата(Andrew34 @ Sep 20 2010, 23:05)  toweroff - извините, но без знаний я не понимаю что значит: "prosto REG ^ REG_MAX == 0 REG schetchik, REG_MAX - kuda pishet kontroller " подскажите где можно поискать инфу чтоб задавать вам не такие зелёные вопросы и говорить на одном языке Это как раз значения текущего состояния счетчика и значения регистра, ограничивающего счет. Интерфейс связи с МК на первых порах лучше сделать параллельный (A, D, /R (? если надо), /W, /CS) Если представляете, как устроены счетчики, регистры, дешифраторы, буферы и как как ко всему этому делу иметь доступ через внешнюю шину МК - проблем в освоении ПЛИС вряд ли появится
|
|
|
|
|
Sep 21 2010, 14:42
|
Участник

Группа: Участник
Сообщений: 29
Регистрация: 23-05-10
Пользователь №: 57 475

|
Чудок легче...Спасибо ВСЕМ!) Я некорректно сформулировал задачу, упустив существенные детали: (в скобках будут диапазоны в пределах которых необходимо перестраиваться с некоторым шагом)
сперва мне необходимо отследить контроллером разгон двигателя до 30тыс.оборотов и затем отключить его.
Далее пауза 200 мкс, и 1ый импульс +12В (20-40 мкс) с фронтом (3-10мкс)
Далее пауза (450-550 мкс), и 2й импульс +12В (20-40 мкс) с фронтом (3-10мкс)
Далее пауза 300 мкс, и 3й импульс +5В (100-200 мкс) с фронтом (1-10мкс)
Далее пауза 200 мкс, и 4ый импульс (20-200 мкс) с фронтом (10-100 нс)
Насколько я понял реализовать на ПЛИС всю эту игру таймерами, не сложно, надо несколько дней посвятить глубокому изучению... Однако если существует более простой способ внимательно выслушаю, хотя отсчитывать мкС/нС надо бы сделать интерактивно в цифре,т.е. сделать внешний вид доступный даже постороннему юзеру (типа нажимаешь кнопку увеличив/уменьш длительность импульса/паузы/фронта))
|
|
|
|
|
Sep 21 2010, 16:38
|

я только учусь...
     
Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839

|
Цитата(Andrew34 @ Sep 21 2010, 17:42)  Чудок легче...Спасибо ВСЕМ!) Я некорректно сформулировал задачу, упустив существенные детали: (в скобках будут диапазоны в пределах которых необходимо перестраиваться с некоторым шагом)
сперва мне необходимо отследить контроллером разгон двигателя до 30тыс.оборотов и затем отключить его.
Далее пауза 200 мкс, и 1ый импульс +12В (20-40 мкс) с фронтом (3-10мкс)
Далее пауза (450-550 мкс), и 2й импульс +12В (20-40 мкс) с фронтом (3-10мкс)
Далее пауза 300 мкс, и 3й импульс +5В (100-200 мкс) с фронтом (1-10мкс)
Далее пауза 200 мкс, и 4ый импульс (20-200 мкс) с фронтом (10-100 нс)
Насколько я понял реализовать на ПЛИС всю эту игру таймерами, не сложно, надо несколько дней посвятить глубокому изучению... Однако если существует более простой способ внимательно выслушаю, хотя отсчитывать мкС/нС надо бы сделать интерактивно в цифре,т.е. сделать внешний вид доступный даже постороннему юзеру (типа нажимаешь кнопку увеличив/уменьш длительность импульса/паузы/фронта)) все да кроме импульсов уровня +12В; +5В с фронтом (3-10мкс) или с фронтом (1-10мкс) или с фронтом (10-100 нс) - одной ПЛИС нет В общем: Сформировать импульсы различной длительности и различной скважности на ПЛИС проблем нет, т.е. логику работы PS Книгу которую я Вам рекомендовал - полностью, если Вы хотите понять что такое ПЛИС и как с ней работать/программировать
--------------------
If it doesn't work in simulation, it won't work on the board.
"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
|
|
|
|
|
Sep 21 2010, 18:41
|
Участник

Группа: Участник
Сообщений: 29
Регистрация: 23-05-10
Пользователь №: 57 475

|
Цитата(Maverick @ Sep 21 2010, 19:38)  все да кроме импульсов уровня +12В; +5В с фронтом (3-10мкс) или с фронтом (1-10мкс) или с фронтом (10-100 нс) - одной ПЛИС нет В общем: Сформировать импульсы различной длительности и различной скважности на ПЛИС проблем нет, т.е. логику работы
PS Книгу которую я Вам рекомендовал - полностью, если Вы хотите понять что такое ПЛИС и как с ней работать/программировать Насколько я понимаю динамически играться фронтами на ПЛИС невозможно... Однако задать хороший фронт в 10-100 нС до следующей прошивки можно... а для 12В надо какойто усилительн. элемент ставить... Подправьте если я не прав)
|
|
|
|
|
Sep 21 2010, 19:35
|
Гуру
     
Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847

|
Цитата(Andrew34 @ Sep 21 2010, 22:41)  Насколько я понимаю динамически играться фронтами на ПЛИС невозможно... Вообще невозможно Цитата Однако задать хороший фронт в 10-100 нС до следующей прошивки можно... Нет. ПЛИС - это чисто цифровое устройство. Она не умеет формировать фронты с заданными параметрами. То, что вам тут рекомендовать slow/fast slew rate вам не подойдет, т.к. собственно скорость нарастания точно не задается, а лишь в терминах быстро/медленно. И предназначенно это не для формирования треугольников, а для уменьшения EMI и звона в проводах. Вам нужна аналоговая схема для формирования фронтов Цитата а для 12В надо какойто усилительн. элемент ставить... Угу. И просто усилителем не обойдется. Если надо регулировать фронты, то понадобится интегратор (аналоговый), ЦАП и ключи (аналоговые) Кстати, какой ток в нагрузке?
|
|
|
|
|
Sep 21 2010, 19:53
|

Гуру
     
Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514

|
Цитата(XVR @ Sep 21 2010, 23:35)  То, что вам тут рекомендовать slow/fast slew rate вам не подойдет, т.к. собственно скорость нарастания точно не задается, а лишь в терминах быстро/медленно. И предназначенно это не для формирования треугольников, а для уменьшения EMI и звона в проводах. я и не рекомендовал, лишь указал, что это возможно сделать, и производится это только при при прошивке и фронты все равно будут, согласно даташиту, +-
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|