Pull to refresh

Comments 48

Разница в том, что приращения обрабатываются не драйвером мыши и системой, а любой сторонней программой работающей с com портом, либо на какой-либо отдельной железке.
Данный конструктив же был разработан чтоб стать частью двухзвенного нежесткого манипулятора.
Забавно тут некоторые минусуют, видать слишком сложными предложениями пишу?
Наверное не поняли. Я, например, не понял :-(
Не понятно, почему мышь — планарный датчик. Для меня всегда планарный, означало, плоский, т.е. мышь — плоский датчик :). В автоматике и телемеханике это слово, скорее всего, имеет другое значение? Типа, датчик определяющий координаты на плоскости?
Ну так правильно, датчик 2х координатный.
Интересно бы почитать продолжение.

Особенно про другие части вашего устройства, чтоб сформировать общее представление о нем и процессе создания подобных вещей в принципе.

И у меня вопрос:
«rs232… позволяет реализовать работу с мышью через стандартные блоки MatLab'а»
"… приращения обрабатываются не драйвером мыши и системой, а… какой-либо отдельной железке."

Вы в пользу rs232 решили из-за MatLab'а, или из-за больше простоты, нежели скажем USB, особенно в контексте потенциальной «железки» — контроллера?
rs232 выбран исключительно ради MatLab'a так как он не умеет работать с USB в режимах xPC и RTW(RTx).
Конечное устройство представляет из себя манипулятор и искусственно созданными двумя нежесткостями.
Думаю если интересно сфотографирую этого монстра.
Пожалуйста, сфотографируйте и добавьте в статью. Думаю не только мне это будет интересно, да и статье добавит ещё больше внушительности и полноты.
Хорошо но это уже после праздника ;)
лучше видео сделайте, хотелось бы увидеть в действии
1) что зачем?
2) это часть из дипломного проекта.

Если «зачем» подразумевалось зачем это делать из мыши, то как было указано выше — цена и простота реализации.
Нет. Под «зачем» я имел ввиду «зачем переписывать драйвер мыши в матлабе?». Ну и второй вопрос все еще в силе.
Уточню. Мышь и так является планарным датчиком положения, и именно так используется в ОС. Зачем его использовать «в качестве» планарного датчика положения.
чтоб матлаб мог получать и анализировать данные полученные от этого датчика в обход системы, а в конечном результате вообще не используется, датчик же используется как обратная связь по положению в замкнутом контуре управления манипулятором.
У меня преподаватель подобным образом выражается )
Я тоже практически ничего не понял. То вы говорите, что задача была в получении координат мыши матлабом в обход системы, то — что матлаб это просто для примера.

Очень бы хотелось аргументации по примерно такой схеме:

Нам нужно сделать [...], потому что такого еще нет, а было бы удобно. Для этого нам понадобится планарный датчик, а для простоты разработки и отладки мы сначала заточим его под Matlab в таком режиме, чтобы потом можно было легко перенести с эмуляции на реальную железку.

Если первое предложение будет достаточно убедительным, дальнейших вопросов ни у кого не возникнет.
Кстати небольоше уточнение, мой диплом про другое, датчик же мне «попросили» (как обычно это делается в институте) сделать для помощи другому специалисту ;)
Мой диплом же совершенно про другие вещи, а конкретнее про Lego шарик и компас :)
Нус попробуем.
Существует задачу управления двухзвенным нежестким манипулятором.
Были испробованы много способов для определения конечного положения каждого из звеньев, начиная от тензометров наклеенных на звенья, заканчивая бредовыми идеями с лазерными датчиками расстояния.
Конечная цель определить куда все таки переместилось звено после подачи управляющих импульсов на сервоприводы, так как звено нежесткое, а также конструкция имеет некоторую инерцию, то использовать для этого тахогенераторы и счетчики самих двигателей бессмысленно.

Под MatLab же заточка велась именно для эта моделирования/программирования, подбора ПИД и подобных регуляторов. Вос ссылочка примерно с такими же задачами в дипломе www.lib.ua-ru.net/diss/cont/61880.html.

Вообще тема управления нежесткими манипуляторами — любимая тема специальности Системы Управления, про эту тему уже столько всего написано.

Мышь была взята так как готовый бесконтактный датчик положения в цене явно превышает стоимость мыши.

Постарался как мог объяснить, 9 сфотографирую и попытаюсь объяснить предметно.

немного криво написал, имел ввиду, что в конечном варианте MatLab не используется. Он нужен на этапе проектирования, системы, подбора регуляторов, фильтров и прочего, для последующей аппаратной реализации.
Мне кажется, что вы зря об этом не упомянули в самой статье. Люди банально не поняли, для чего вы городили весь огород. Честно говоря, я до конца тоже не понял)
1) так как иначе не было возможности вытащить приращения из мыши, MatLab не умеет работать с usb ну и плюс еще массу чего не умеет :) вот и пришлось лепить аппаратно программный костыль
2) Диплом я и не планировал тут публиковать.
А опубликовал это вдруг кому будет интересно или пригодится
UFO just landed and posted this here
Интересная статья. Только, наверное, стоило написать побольше про контекст, в котором это собиралось (про диплом то есть :). Иначе не совсем понятно, какая цель преследуется, и зачем такой мощный контроллер (только ту часть, которую вы описали, ИМХО можно было бы реализовать на какой-нибудь AVRке вроде tiny45).
Согласен что не совсем предметно получилось, на счет контроллера — привык просто к нему ;) плюс нужен был CAN и I2C. Не спорю что это все в принципе реализуемо на AVRке, но тут встал вопрос удобства. Постараюсь 9 марта всю конструкцию сфотографировать, и более предметно объяснить зачем нужен датчик положения.
Напишите в самом начале — какая стояла задача, почему было решено использовать Матлаб, и что получилось в конечном итоге, и напишите это языком, понятным пятилетним дебилам широким массам! :-)
У этого куска текстолита есть изернет!
Надо было писать дипломную работу на тему «Интернет-радиоприёмник из MBED»
Вот его бы скопировал!
У MBED цап — всего лишь 10 бит :) звук получится аховый ;)
более того, кроме мышки особо-то альтернативы нет. я сейчас думаю над инерциальной системой навигации, там гироскопы так шумят и дрейфуют, что о точном позиционировании не может быть и речи. Ну разве что gps еще даст нормальую точность, если у нас есть время на замеров эдак 200-300 (5 минут)
Гироскопы это конечно хорошо ;) но точность как Вы сами заметили ни к черту, точность GPS же в нашей стране и в солнечный погожий денек это порядка 2-20 метров. не думаю что для манипулятора это подходит ;)
ну я и говорил про 200 замеров с анализом результатов. Думаю, что с gps можно получить сантиметровую точность за пять минут простоя в одном месте, но ясное дело, это не для манипулятора, и те, кто выдумал мышку, замечательно с задачей справились
На самом деле мышь используется для минимизации расходов, так как датчика надо 2. Были бы у наших вузов финансы, я думаю они бы не стали так извращаться.
Конечно сам MBED — это 100$, но он был куплен ранее и для других целей.
UFO just landed and posted this here
Все сорцы прикреплены выше, на Дампе как раз полностью библиотека для работы с мышью
Стоимость Матлаба учтена? ))) А по делу: пишите о чем речь, а то статья не дает понять что и для чего происходит, не все же электронщики.
MatLab по программе Academic Licensing, обновил статью чуть-чуть.
Реализовывать дешёвый датчик на базе очень дорогого контроллера, ресурсы которого совершенно ненужны в данной задаче — как-то не совсем адекватно. Возможно Ваша система будет обрастать новыми возможностями со временем?
Как я уже писал выше конечным этапом будет полный отказ от PC, управление будет вестись в замкнутом контуре. Да и контроллер был куплен изначально для других задач ;) Привычно просто на нем реализовывать. В принципе этот датчик можно реализовать и на амтеле
Я все-таки все равно не понял — а зачем _определять_ положение манипулятора? почему не задать _начальное_ положение и не управлять дальше шаговыми двигателями. Положение потом _вычисляется_?
Как было написано выше манипулятор нежесткий + инерционность в звеньях, это и есть смысл, управление такой системой возможно лишь через обратные связи на подобии данного датчика.
UFO just landed and posted this here
Ничерта не понял. Какая конечная схема то?

Мышь — контроллер — комп — контроллер — привод манипулятора?

А почему тогда всего два провода — только сериал интерфейс. А куда тогда мышь втыкается? В комп? Или если эти провода идут от мыши, то как контроллер взаимодействует с компом? По USB?
В данной статье схема такова — Мышь — Контроллер — Комп. Тут приведен пример получения приращений от мыши в MatLab'е. Если внимательно прочитать статью там написана куда подключается мышь, непосредственно к контроллеру.
У вас получается что UART TX идущий в комп на COM порт играет еще и роль клока для мыши?
Нет, всю работу с мышью ведет контроллер, и колок и дата дергает он.
Сам контроллер же подключен по USB, изображает из себя COM порт и туда отдаются данные, которые уже потом анализируются MatLab
Подскажите как в Матлабе получить координаты мышки? Какой Toolbox для этого использовать?
В MatLab'е нет штатных тулбоксов для работы с мышью, есть для работы с 3d мышами и с джойстиками, на матлабцентрале есть насколько самописных библиотек, но они на сколько я помню не работают в RT
Sign up to leave a comment.

Articles