14626

Изучение методики разработки программ в системе MATLAB при изучении кинематического управления роботами

Лабораторная работа

Физика

Лабораторная работа №1: Вариант 1 Изучение методики разработки программ в системе MATLAB при изучении кинематического управления роботами. Изучение методики разработки программ в системе MATLAB при изучении кинематического управления роботами Цель работы: Изу...

Русский

2013-06-08

156.5 KB

8 чел.

Лабораторная работа №1:

Вариант 1

Изучение методики разработки программ  в системе MATLAB при изучении кинематического управления роботами.

Изучение методики разработки программ  в системе MATLAB при изучении кинематического управления роботами   

Цель работы: Изучение команд и  синтаксиса системы MATLAB, а также способов графического представления результатов вычислений на экране дисплея.

Объектом исследования лабораторной работы является

 двухзвенный робот, представленный на рисунке

L1=0,3;   a=0,1;   ;   q2=0,15;

Текст программы:

L=[0.3 0]

a=0.5

q=[0.785 0.15]

pause

for k=1:3

 x=q(2)*cos(q(1))

 y=q(2)*sin(q(2))

 z=L(1)

 qk=[q(1) q(2)]

q(1)=q(1)+0.04*k;

q(2)=q(2)+0.03*k;

x0(k)=x;

y0(k)=y;

z0(k)=z;

pause

end

view(5,5)

plot3([0,x0(1)],[0,y0(1)],[0,z0(1)],'mo-','MarkerSize',5,'LineWidth',1)

x0

pause

y0

pause

z0

qk

pause;

hold on;

plot3([0,x],[0,y],[0,z],'ro-','MarkerSize',5,'LineWidth',1)

x

y

z

pause

st = 'Нажмите любую кнопку...';

disp(st);

pause;

xab=[0 0]; yab=[0 0]; zab=[0 L(1)];

xbc=[0 x0(1)]; ybc=[0 y0(1)]; zbc=[L(1) z0(1)];

xabk=[0 0]; yabk=[0 0]; zabk=[0 L(1)];

xbck=[0 qk(2)*cos(qk(1))]; ybck=[0 qk(2)*sin(qk(2))]; zbck=[L(1) L(1)];

view(5,5)

l1=line(xab,yab,zab)

pause;

hold on;

l2=line(xbc,ybc,zbc)

pause;

xlabel('X');

ylabel('Y');

zlabel('Z');  

grid on;

l1=line(xabk,yabk,zabk)

pause;

hold on;

l2=line(xbck,ybck,zbck)

pause;

plot3([x0(1),x0(2)],[y0(1),y0(2)],[z0(1),z0(2)],'ro -','MarkerSize',5,'LineWidth',2)

pause;

hold on;

plot3([x0(2),x0(3)],[y0(2),y0(3)],[z0(2),z0(3)],'mo -','MarkerSize',5,'LineWidth',2)

pause;  

plot3([0,x0(3)],[0,y0(3)],[0,z0(3)],'ro-','MarkerSize',5,'LineWidth',2)

rotate3d on;

pause;

hold off;

Результаты расчета обобщенных и абсолютных координат для трех точек ведены в таблицу:

Абсолютные координ

Обобщенные координаты

x

y

z

q1

q2

1 точка

0.1061

0.0224

0.3000

0.7850

0.1500

2 точка

0.1221

0.0322

0.3000

0.8250

0.1800

3 точка

0.1482

0.0570

0.3000

0.9050

0.2400

   

 

 

 


 

А также другие работы, которые могут Вас заинтересовать

49103. Реализация алгоритмов решения задач при проектировании САУ с использованием объектно-ориентированного языка программирования C++ 810 KB
  Найти минимальное значение целевой функции. Недостатком является требование задания целевой функции в аналитическом виде унимодальности целевой функции в заданном интервале изменения переменной дифференцируемости целевой функции. Найти значения целевой функции в пробных точках . Определить минимальное значение целевой функции путем сравнения значений функции в пробных точках Метод равномерного поиска требует выполнения большого числа вычислений.
49104. Проектирование информационных систем 723.5 KB
  Информация об управляющей компании Цель компании ЛОИС помочь предприятиям в повышении эффективности бизнеса и качества предоставляемых услуг за счёт применения информационных систем разработанных компанией. Информация об управляющей компании Управляющая компания оказывает услуги доверительного управления клиентам. Компания совершает операции с собственными активами и также предоставляет оперативную отчётность о состоянии собственных активов компании акционерам и руководству компании.
49105. Прогнозирование результатов спортсменов 486 KB
  Работа над проектом Для решения поставленной задачи будем использовать персептрон основанный на нейронной сети с 14ю входами с 1 выходным и с одним скрытым слоем. Одна из наиболее привлекательных для пользователя сторон нейросетевой технологии обеспечившая ей нынешнюю всеобщую популярность отсутствие необходимости в детальном программировании процесса решения задачи; возможность решения даже тех задач для которых отсутствуют алгоритмы решения; возможность адаптации к условиям функционирования обучения и переобучения....
49107. Ревизия (аудит) расчетов с депонентами, по претензиям, по возмещению материального ущерба, с разными дебиторами и кредиторами 103.25 KB
  Дебиторская задолженность - сумма долгов, причитающихся объединению, предприятию, организации, учреждению от юридических или физических лиц в итоге хозяйственных взаимоотношений с ними. Кредиторская задолженность - денежные средства предприятия, организации или учреждения, подлежащие уплате соответствующим юридическим или физическим лицам.
49108. Дослідження соціалізації дітей дошкільного віку 361.5 KB
  Пошук основних особистісних та середовищних детермінант, що визначають ті проблеми, з якими стикаються діти дошкільного віку, а також основні підходи щодо процесу соціалізації та адаптації, є актуальним завданням в сучасних умовах трансформації освіти України.
49109. Архитектура и системы команд микропроцессора К580. Достоинства и недостатки ассемблера 119.5 KB
  Недостатки ассемблера ВВЕДЕНИЕ Достоинства ассемблера Обеспечение максимального использования специфических возможностей конкретной платформы что позволяет создавать более эффективные программы с меньшими затратами ресурсов. АНАЛИЗ ЗАДАЧИ И РАЗРАБОТКА АЛГОРИТМА В результате выполнения программы мы должны получить в регистре В значение равное 0. РАЗРАБОТКА СТРУКТУРЫ ПРОГРАММЫ Для реализации поставленной задачи нужно запомнить входные данные В программе осуществляется последовательное увеличение содержимого ячейки 6000h на 1 путем...
49110. Загрузить в ячейку памяти с адресом 6000h число 100 и уменьшать его на единицу, пока результат не станет равен нулю 146.5 KB
  Именно языки программирования высокого уровня и их наследники в основном используются в настоящее время в индустрии информационных технологий. Однако, языки ассемблера сохраняют свою нишу, обуславливаемую их уникальными преимуществами в части эффективности и возможности полного использования специфических средств конкретной платформы.
49111. Вычесть содержимое ячейки памяти с адресом 6001H из содержимого ячейки памяти с адресом 6000Н. Занести результат в ячейку памяти с адресом 6002H, если результат положительный, иначе — в ячейку 6003Н 433 KB
  Директивы ассемблера позволяют включать в программу блоки данных (описанные явно или считанные из файла); повторить определённый фрагмент указанное число раз; компилировать фрагмент по условию; задавать адрес исполнения фрагмента, менять значения меток в процессе компиляции; использовать макроопределения с параметрами и др.