trivkins.c
来自「CNC 的开放码,EMC2 V2.2.8版」· C语言 代码 · 共 97 行
C
97 行
/********************************************************************* Description: trivkins.c* Trivial kinematics for 3 axis Cartesian machine** Derived from a work by Fred Proctor & Will Shackleford** Author:* License: GPL Version 2* System: Linux* * Copyright (c) 2004 All rights reserved.** Last change:* $Revision: 1.14 $* $Author: cradek $* $Date: 2007/07/14 21:43:23 $********************************************************************/#include "kinematics.h" /* these decls */int kinematicsForward(const double *joints, EmcPose * pos, const KINEMATICS_FORWARD_FLAGS * fflags, KINEMATICS_INVERSE_FLAGS * iflags){ pos->tran.x = joints[0]; pos->tran.y = joints[1]; pos->tran.z = joints[2]; pos->a = joints[3]; pos->b = joints[4]; pos->c = joints[5]; pos->u = joints[6]; pos->v = joints[7]; pos->w = joints[8]; return 0;}int kinematicsInverse(const EmcPose * pos, double *joints, const KINEMATICS_INVERSE_FLAGS * iflags, KINEMATICS_FORWARD_FLAGS * fflags){ joints[0] = pos->tran.x; joints[1] = pos->tran.y; joints[2] = pos->tran.z; joints[3] = pos->a; joints[4] = pos->b; joints[5] = pos->c; joints[6] = pos->u; joints[7] = pos->v; joints[8] = pos->w; return 0;}/* implemented for these kinematics as giving joints preference */int kinematicsHome(EmcPose * world, double *joint, KINEMATICS_FORWARD_FLAGS * fflags, KINEMATICS_INVERSE_FLAGS * iflags){ *fflags = 0; *iflags = 0; return kinematicsForward(joint, world, fflags, iflags);}KINEMATICS_TYPE kinematicsType(){ return KINEMATICS_IDENTITY;}#ifdef RTAPI#include "rtapi.h" /* RTAPI realtime OS API */#include "rtapi_app.h" /* RTAPI realtime module decls */#include "hal.h"EXPORT_SYMBOL(kinematicsType);EXPORT_SYMBOL(kinematicsForward);EXPORT_SYMBOL(kinematicsInverse);MODULE_LICENSE("GPL");int comp_id;int rtapi_app_main(void) { comp_id = hal_init("trivkins"); if(comp_id > 0) { hal_ready(comp_id); return 0; } return comp_id;}void rtapi_app_exit(void) { hal_exit(comp_id); }#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?