А кто нибудь уже догадался использовать отпечатки разных пальцев для осуществления нужного действия на спящем телефоне? Изменение громкости, смена трека, мгновенный старт видео, фото, звуковой записи, фонарика в конце концов? Любой человек или хороший фрезеровщик может запрограммировать до 10 действий, это же так удобно!
Да, потеря детализации естественно есть. Если углубиться в раскопки их кода получения массива то наверно что-то можно наколхозить)
У меня ШИМ и FOC просчитывается на 30кГц, для совсем быстрых иголок я в коде ловлю локальный максимум (на картинке VsMAX — он медленно спадает). Ну а максимальную частоту с которой можно получать студией одну 32х-битную переменную я измерю и сразу напишу, думаю будет около 5-10кГц. Надо снапшот затолкать в прерывание с малым приоритетом, пока она у меня в главном цикле.
Ещё есть варианты с использованием дополнительного пина SWO — специально для trace, но нужен уже другой, использующий его софт. Keil это умеет, но графопостроитель там намного менее удобный.
Скриншот я приложил в «соседней» теме. На самом деле — это не отображение массива. Это вызываемая в коде функция, делающая snapshot запрошенных студией переменных в свой внутренний массив, размер которого можно изменять(у меня порядка 200 элементов). Данные, из этого массива студия умудряется забирать с контроллера быстрее, чем она считывает переменные в обычном режиме. Если не делать снапшот слишком часто — то график в студии будет непрерывный и с очень плотными точками. При этом на едином графике можно наблюдать и «обычные» переменные, с реденькими точками и плотные, полученные снапшотом. режим переключается одним кликом. Разве что одни могут уползать относительно других, из-за нерегулярности вызова функции снапшот'а.
Это четверть экрана, на самом деле переменных одновременно получается намного больше, то есть плотность не максимальна, но разница между разными способами получения данных на лицо(время в миллисекундах):
Спасибо за предложение, очень ценим такую открытость!
Благодаря вашей статье совершили очередной подход к документации к STMStudio и нашли как сделать скоростное получение переменных.
И сразу удалось довести до ума контроллер. С передачей по CAN пока повременим.
Получается, что ST ничуть не хуже TI в плане motorcontrol — просто не так распиарен. Ну и я даже не знаю как с 4х параллельно работающих ADC переходить на один)
Очень хорошо, жаль год назад, когда я начинал, такой статьи не было!
«Калачев Ю. Н. Векторное регулирование (заметки практика)» — казалась эльфийскими рунами)
Мне лично очень помогло видео от TI www.youtube.com/watch?v=cdiZUszYLiA я просто до ушей расплылся когда его смотрел, от того что всё стало ясно) + от этого же автора есть ролик про BLDC.
Ну и «библию» могу порекомендовать — «ELECTRIC MOTORS AND DRIVES Fundamentals, Types, and Applications Fourth Edition AUSTIN HUGHES AND BILL DRURY» — исключительно понятным языком объяснено почти всё, что необходимо для понимания, в т.ч. векторного управления.
В догонку к теме про отладку электропривода: мощный и точный FOC таки можно сделать на микроконтроллерах ST, буквально вчера провёл все тесты и остался доволен — STMStudio позволяет получать очень детальные графики параметров, до миллисекунды и даже лучше. Всё что нужно — использовать dataAcq.c из дистрибутива студии и добавить в код пару строчек (см UM1025 от ST).
UPD: сегодня, по горячим следам, был найден способ записи и передачи stmstudio пакета данных, записанного в оперативку с любой скоростью. Пока только на их же примере, но на днях попробую на реальном силовом блоке. Snapshot trigger capture.
Читаю, прямо по-живому всё! Спасибо, приятно осознавать что ты не одинок)
Но у меня есть чем поделиться: motorcontrol построен на stm32f3, а данные я снимаю через STMStudio по SWD.
Быстродействие можно довести до 50-80Гц, в зависимости от числа снимаемых переменных.
Есть возможность записи в регистры. Контроллер не останавливается и не резетится.
Минус — сидишь рядом с 20-30КВт оборудованием, да и SWD довольно чувствителен к помехам, даже с экранированными кабелями.
А вот снятие осциллограмм из ОЗУ приходилось делать через дебуггер CoIDE, копируя-вставляя столбец данных массива в Calc.
Если-бы STMStudio умела считывать и строить график по массиву — цены бы ей небыло.
Писать свою оболочку пока нет времени, стараемся получить нужный результат на том что есть.
Вот картинка для примера, рад буду ответить на вопросы или попробовать что-то новое.
Что-то я не понял… это ноутбук? с DVI портом? SyncMaster подключен по цифре, а откуда тогда L1715U? или это десктоп с двумя мониторами а «мобильный» он уже сам придумал. В любом случае опознать система может только один из двух мониторов подключенных в разветвитель, если всё спаяно верно.
А зачем вам вообще это всё, если стоит 8600?
Если с подключенным разветвителем винда в «разрешении экрана» рисует только один подключенный аналоговый монитор — то видимо видеокарта не в состоянии подавать на DVI-I одновременно и цифру и аналог. Если их там два — то расширяйте раб. стол.
Напишите модель видеокарты, для статистики.
У меня всё началось с того, что винда увидела аналоговый монитор, подключенный к DVI через заводской переходник — как два монитора.
А на Pinouts.ru написано что пассивным переходником возможно из miniDisplayPort получить VGA. Может цифровые линии могут переключиться на аналоговый режим?.. Но хватит-ли их чтобы и HDMI сохранился, и уж точно вряд ли там будет разная картинка.
Тестовое использовало не все сигнальные пары и земли DVI и давало грязную картинку. Число контактов на картинке-схеме соответствует финальному, рабочему варианту.
По розовым идёт только цифра, по зелёным только аналог. Если каких-то нет, то и подключение такого типа не организовать. Но на всех видеокартах которые я видел стоит DVI-I. А вот на переходниках DVI-VGA обычно розовых нет, потому что они в подключении аналогового монитора не участвуют.
В теории, в видеокарту с двумя DVI можно воткнуть 4 монитора. Если она поддерживает такой финт. Как проверить — я писал в первом комментарии.
Если подключить к DVI порту матери/видюхи/бука через переходник аналоговый монитор, а менеджер дисплеев покажет ещё и лишний цифровой — то должно заработать.
Здесь 2кГц. Можно больше, если причесать код. Можно на много больше, если с пропусками. Можно с триггером по нужному событию.
У меня ШИМ и FOC просчитывается на 30кГц, для совсем быстрых иголок я в коде ловлю локальный максимум (на картинке VsMAX — он медленно спадает). Ну а максимальную частоту с которой можно получать студией одну 32х-битную переменную я измерю и сразу напишу, думаю будет около 5-10кГц. Надо снапшот затолкать в прерывание с малым приоритетом, пока она у меня в главном цикле.
Ещё есть варианты с использованием дополнительного пина SWO — специально для trace, но нужен уже другой, использующий его софт. Keil это умеет, но графопостроитель там намного менее удобный.
Это четверть экрана, на самом деле переменных одновременно получается намного больше, то есть плотность не максимальна, но разница между разными способами получения данных на лицо(время в миллисекундах):
Благодаря вашей статье совершили очередной подход к документации к STMStudio и нашли как сделать скоростное получение переменных.
И сразу удалось довести до ума контроллер. С передачей по CAN пока повременим.
Получается, что ST ничуть не хуже TI в плане motorcontrol — просто не так распиарен. Ну и я даже не знаю как с 4х параллельно работающих ADC переходить на один)
«Калачев Ю. Н. Векторное регулирование (заметки практика)» — казалась эльфийскими рунами)
Мне лично очень помогло видео от TI www.youtube.com/watch?v=cdiZUszYLiA я просто до ушей расплылся когда его смотрел, от того что всё стало ясно) + от этого же автора есть ролик про BLDC.
Ну и «библию» могу порекомендовать — «ELECTRIC MOTORS AND DRIVES Fundamentals, Types, and Applications Fourth Edition AUSTIN HUGHES AND BILL DRURY» — исключительно понятным языком объяснено почти всё, что необходимо для понимания, в т.ч. векторного управления.
В догонку к теме про отладку электропривода: мощный и точный FOC таки можно сделать на микроконтроллерах ST, буквально вчера провёл все тесты и остался доволен — STMStudio позволяет получать очень детальные графики параметров, до миллисекунды и даже лучше. Всё что нужно — использовать dataAcq.c из дистрибутива студии и добавить в код пару строчек (см UM1025 от ST).
Но у меня есть чем поделиться: motorcontrol построен на stm32f3, а данные я снимаю через STMStudio по SWD.
Быстродействие можно довести до 50-80Гц, в зависимости от числа снимаемых переменных.
Есть возможность записи в регистры. Контроллер не останавливается и не резетится.
Минус — сидишь рядом с 20-30КВт оборудованием, да и SWD довольно чувствителен к помехам, даже с экранированными кабелями.
А вот снятие осциллограмм из ОЗУ приходилось делать через дебуггер CoIDE, копируя-вставляя столбец данных массива в Calc.
Если-бы STMStudio умела считывать и строить график по массиву — цены бы ей небыло.
Писать свою оболочку пока нет времени, стараемся получить нужный результат на том что есть.
Вот картинка для примера, рад буду ответить на вопросы или попробовать что-то новое.
А зачем вам вообще это всё, если стоит 8600?
Напишите модель видеокарты, для статистики.
У меня всё началось с того, что винда увидела аналоговый монитор, подключенный к DVI через заводской переходник — как два монитора.
Но думаю что как раз пинаутс врёт.
В теории, в видеокарту с двумя DVI можно воткнуть 4 монитора. Если она поддерживает такой финт. Как проверить — я писал в первом комментарии.