Проектирование систем числового программного управления механизмом, страница 8

 a[3][3][0]=0;           a[3][3][1]=0;          a[3][3][2]=0;            a[3][3][3]=1;

 a[4][0][0]=-sin(q5);  a[4][0][1]=0;          a[4][0][2]=-cos(q5);  a[4][0][3]=0;

 a[4][1][0]=cos(q5);  a[4][1][1]=0;          a[4][1][2]=-sin(q5);   a[4][1][3]=0;

 a[4][2][0]=0;           a[4][2][1]=-1;         a[4][2][2]=0;            a[4][2][3]=s5;

 a[4][3][0]=0;           a[4][3][1]=0;          a[4][3][2]=0;            a[4][3][3]=1;

 a[5][0][0]=cos(q6);  a[5][0][1]=0;          a[5][0][2]=sin(q6);    a[5][0][3]=-s6*sin(q6);

 a[5][1][0]=sin(q6);   a[5][1][1]=0;          a[5][1][2]=-cos(q6);  a[5][1][3]=-s6*cos(q6);

 a[5][2][0]=0;           a[5][2][1]=1;          a[5][2][2]=0;            a[5][2][3]=0;

 a[5][3][0]=0;           a[5][3][1]=0;          a[5][3][2]=0;            a[5][3][3]=1;

 for (i=0;i<4;i++)

      { for (j=0;j<4;j++) t[0][i][j]=a[0][i][j];}

//Перемножение матриц Аi

for (k=0;k<5;k++)

      { for (i=0;i<4;i++)

             { for (j=0;j<4;j++) t[k+1][i][j]=t[k][i][0]*a[k+1][0][j]+t[k][i][1]*a[k+1][1][j]+t[k][i][2]*a[k+1][2][j]+t[k][i][3]*a[k+1][3][j];}}

//Вывод значений координат

 cout<<"\nX="<<t[5][0][3]<<"\nY="<<t[5][1][3]<<"\nZ="<<t[5][2][3]<<"\n"; 

 cout<<"\n  "<<t[5][0][0]<<"\nN="<<t[5][1][0]<<"\n  "<<t[5][2][0]<<"\n";

 cout<<"\n  "<<t[5][0][1]<<"\nO="<<t[5][1][1]<<"\n  "<<t[5][2][1]<<"\n";

 cout<<"\n  "<<t[5][0][2]<<"\nP="<<t[5][1][2]<<"\n  "<<t[5][2][2]<<"\n";

}

Заключение

                Результатом курсового проектирования явился проект системы УЧПУ рассмотренным механизмом. Сам по себе проект является неполным по сравнению с масштабами реальной работы : незавершённым осталось решение обратной задачи кинематики; не были рассмотрены детально вопросы подключения элементов измерительной системы, приводов, других блоков УЧПУ; практически не были затронуты вопросы стабилизации движения механизма и т.п. В качестве недостатков данного проекта можно отметить решение ПЗК достаточно сложным способом – каждый раз перемножая 6 матриц. Этот недостаток можно устранить, внеся корректировки в программу решения ПЗК –  заменить перемножение матриц расчётом элементов заранее полученной матрицы Т.

Список использованной литературы

  1. «Управление движением пространственных механизмов».А.Ю.Омельченко, В.О.Осипов, Г.И.Прокофьев, СПб, 2002 г.
  2. Курс лекций по дисциплине «Робототехнические системы и системы программного управления».
  3. «Системы программного управления промышленными установками и робототехническими комплексами», Б.Г.Коровин, Г.И.Прокофьев, Л.Н.Рассудов, Ленинград, 1990 г.