roboticstoolbox-python 1.4.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- roboticstoolbox/__init__.py +107 -0
- roboticstoolbox/backends/Connector.py +113 -0
- roboticstoolbox/backends/Dynamixel/README.md +9 -0
- roboticstoolbox/backends/Dynamixel/dynamixel.json +581 -0
- roboticstoolbox/backends/Dynamixel/dynamixel_io.py +450 -0
- roboticstoolbox/backends/Dynamixel/dynamixel_sdk/LICENSE +201 -0
- roboticstoolbox/backends/Dynamixel/dynamixel_sdk/README.md +28 -0
- roboticstoolbox/backends/Dynamixel/dynamixel_sdk/ReleaseNote.md +181 -0
- roboticstoolbox/backends/Dynamixel/dynamixel_sdk/__init__.py +27 -0
- roboticstoolbox/backends/Dynamixel/dynamixel_sdk/group_bulk_read.py +163 -0
- roboticstoolbox/backends/Dynamixel/dynamixel_sdk/group_bulk_write.py +109 -0
- roboticstoolbox/backends/Dynamixel/dynamixel_sdk/group_sync_read.py +166 -0
- roboticstoolbox/backends/Dynamixel/dynamixel_sdk/group_sync_write.py +99 -0
- roboticstoolbox/backends/Dynamixel/dynamixel_sdk/packet_handler.py +33 -0
- roboticstoolbox/backends/Dynamixel/dynamixel_sdk/port_handler.py +155 -0
- roboticstoolbox/backends/Dynamixel/dynamixel_sdk/protocol1_packet_handler.py +548 -0
- roboticstoolbox/backends/Dynamixel/dynamixel_sdk/protocol2_packet_handler.py +1080 -0
- roboticstoolbox/backends/Dynamixel/dynamixel_sdk/robotis_def.py +75 -0
- roboticstoolbox/backends/Dynamixel/dyndata.py +121 -0
- roboticstoolbox/backends/PyPlot/EllipsePlot.py +256 -0
- roboticstoolbox/backends/PyPlot/PyPlot.py +778 -0
- roboticstoolbox/backends/PyPlot/PyPlot2.py +537 -0
- roboticstoolbox/backends/PyPlot/README.md +67 -0
- roboticstoolbox/backends/PyPlot/RobotPlot.py +247 -0
- roboticstoolbox/backends/PyPlot/RobotPlot2.py +123 -0
- roboticstoolbox/backends/PyPlot/__init__.py +4 -0
- roboticstoolbox/backends/ROS/ROS.py +129 -0
- roboticstoolbox/backends/ROS/__init__.py +3 -0
- roboticstoolbox/backends/__init__.py +39 -0
- roboticstoolbox/backends/swift/__init__.py +165 -0
- roboticstoolbox/bin/__init__.py +0 -0
- roboticstoolbox/bin/_bintools.py +61 -0
- roboticstoolbox/bin/rtbtool.py +404 -0
- roboticstoolbox/blocks/Icons/250x250/armplot.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/bicycle.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/camera.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/circlepath.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/coriolis.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/ctraj.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/delta2tr.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/diffsteer.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/fdyn.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/fdynx.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/fkine.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/gravload.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/idyn.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/idynx.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/ikine.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/inertia.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/jacobian.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/jtraj.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/lspb.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/multirotor.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/multirotormixer.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/multirotorplot.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/point2tr.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/tr2delta.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/tr2t.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/unicycle.png +0 -0
- roboticstoolbox/blocks/Icons/250x250/vehicleplot.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/armplot.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/bicycle.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/camera.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/circlepath.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/coriolis.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/delta2tr.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/diffsteer.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/fdyn.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/fdynx.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/fkine.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/gravload.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/idyn.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/idynx.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/ikine.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/inertia.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/jacobian.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/jtraj.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/lspb.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/multirotor.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/multirotormixer.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/multirotorplot.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/point2tr.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/tr2delta.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/tr2t.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/unicycle.png +0 -0
- roboticstoolbox/blocks/Icons/50x50/vehicleplot.png +0 -0
- roboticstoolbox/blocks/Icons/armplot.png +0 -0
- roboticstoolbox/blocks/Icons/bicycle.png +0 -0
- roboticstoolbox/blocks/Icons/camera.png +0 -0
- roboticstoolbox/blocks/Icons/circlepath.png +0 -0
- roboticstoolbox/blocks/Icons/coriolis.png +0 -0
- roboticstoolbox/blocks/Icons/ctraj.png +0 -0
- roboticstoolbox/blocks/Icons/delta2tr.png +0 -0
- roboticstoolbox/blocks/Icons/diffsteer.png +0 -0
- roboticstoolbox/blocks/Icons/fdyn.png +0 -0
- roboticstoolbox/blocks/Icons/fdynx.png +0 -0
- roboticstoolbox/blocks/Icons/fkine.png +0 -0
- roboticstoolbox/blocks/Icons/gravload.png +0 -0
- roboticstoolbox/blocks/Icons/idyn.png +0 -0
- roboticstoolbox/blocks/Icons/idynx.png +0 -0
- roboticstoolbox/blocks/Icons/ikine.png +0 -0
- roboticstoolbox/blocks/Icons/inertia.png +0 -0
- roboticstoolbox/blocks/Icons/jacobian.png +0 -0
- roboticstoolbox/blocks/Icons/jtraj.png +0 -0
- roboticstoolbox/blocks/Icons/lspb.png +0 -0
- roboticstoolbox/blocks/Icons/multirotor.png +0 -0
- roboticstoolbox/blocks/Icons/multirotormixer.png +0 -0
- roboticstoolbox/blocks/Icons/multirotorplot.png +0 -0
- roboticstoolbox/blocks/Icons/point2tr.png +0 -0
- roboticstoolbox/blocks/Icons/tr2delta.png +0 -0
- roboticstoolbox/blocks/Icons/tr2t.png +0 -0
- roboticstoolbox/blocks/Icons/unicycle.png +0 -0
- roboticstoolbox/blocks/Icons/vehicleplot.png +0 -0
- roboticstoolbox/blocks/README.md +43 -0
- roboticstoolbox/blocks/__init__.py +6 -0
- roboticstoolbox/blocks/arm.py +1591 -0
- roboticstoolbox/blocks/mobile.py +522 -0
- roboticstoolbox/blocks/quad_model.py +132 -0
- roboticstoolbox/blocks/spatial.py +245 -0
- roboticstoolbox/blocks/uav.py +949 -0
- roboticstoolbox/demo/__init__.py +0 -0
- roboticstoolbox/demo/eigdemo.py +112 -0
- roboticstoolbox/demo/tripleangledemo.py +239 -0
- roboticstoolbox/demo/twistdemo.py +175 -0
- roboticstoolbox/ets/ET.py +439 -0
- roboticstoolbox/ets/ET2.py +179 -0
- roboticstoolbox/ets/ETS.py +2013 -0
- roboticstoolbox/ets/ETS2.py +449 -0
- roboticstoolbox/ets/_ET.py +668 -0
- roboticstoolbox/ets/_ETS.py +781 -0
- roboticstoolbox/ets/__init__.py +11 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/Cholesky +45 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/CholmodSupport +48 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/Core +384 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/Dense +7 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/Eigen +2 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/Eigenvalues +60 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/Geometry +59 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/Householder +29 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/IterativeLinearSolvers +48 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/Jacobi +32 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/KLUSupport +41 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/LU +47 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/MetisSupport +35 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/OrderingMethods +70 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/PaStiXSupport +49 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/PardisoSupport +35 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/QR +50 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/QtAlignedMalloc +39 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/SPQRSupport +34 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/SVD +50 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/Sparse +34 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/SparseCholesky +37 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/SparseCore +69 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/SparseLU +50 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/SparseQR +36 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/StdDeque +27 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/StdList +26 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/StdVector +27 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/SuperLUSupport +64 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/UmfPackSupport +40 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Cholesky/LDLT.h +688 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Cholesky/LLT.h +558 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Cholesky/LLT_LAPACKE.h +99 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/CholmodSupport/CholmodSupport.h +682 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/ArithmeticSequence.h +413 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Array.h +417 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/ArrayBase.h +226 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/ArrayWrapper.h +209 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Assign.h +90 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/AssignEvaluator.h +1010 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Assign_MKL.h +178 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/BandMatrix.h +353 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Block.h +448 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/BooleanRedux.h +162 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/CommaInitializer.h +164 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/ConditionEstimator.h +175 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/CoreEvaluators.h +1741 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/CoreIterators.h +132 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/CwiseBinaryOp.h +183 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/CwiseNullaryOp.h +1001 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/CwiseTernaryOp.h +197 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/CwiseUnaryOp.h +103 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/CwiseUnaryView.h +132 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/DenseBase.h +701 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/DenseCoeffsBase.h +685 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/DenseStorage.h +652 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Diagonal.h +258 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/DiagonalMatrix.h +391 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/DiagonalProduct.h +28 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Dot.h +318 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/EigenBase.h +160 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/ForceAlignedAccess.h +150 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Fuzzy.h +155 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/GeneralProduct.h +465 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/GenericPacketMath.h +1040 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/GlobalFunctions.h +194 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/IO.h +258 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/IndexedView.h +237 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Inverse.h +117 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Map.h +171 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/MapBase.h +310 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/MathFunctions.h +2057 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/MathFunctionsImpl.h +200 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Matrix.h +565 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/MatrixBase.h +547 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/NestByValue.h +85 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/NoAlias.h +109 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/NumTraits.h +335 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/PartialReduxEvaluator.h +232 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/PermutationMatrix.h +605 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/PlainObjectBase.h +1128 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Product.h +191 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/ProductEvaluators.h +1179 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Random.h +218 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Redux.h +515 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Ref.h +381 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Replicate.h +142 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Reshaped.h +454 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/ReturnByValue.h +119 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Reverse.h +217 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Select.h +164 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/SelfAdjointView.h +365 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/SelfCwiseBinaryOp.h +47 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Solve.h +188 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/SolveTriangular.h +235 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/SolverBase.h +168 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/StableNorm.h +251 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/StlIterators.h +463 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Stride.h +116 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Swap.h +68 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Transpose.h +464 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Transpositions.h +386 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/TriangularMatrix.h +1001 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/VectorBlock.h +96 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/VectorwiseOp.h +784 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/Visitor.h +381 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/AVX/Complex.h +372 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/AVX/MathFunctions.h +228 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/AVX/PacketMath.h +1574 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/AVX/TypeCasting.h +115 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/AVX512/Complex.h +422 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/AVX512/MathFunctions.h +362 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/AVX512/PacketMath.h +2303 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/AVX512/TypeCasting.h +89 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/AltiVec/Complex.h +417 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/AltiVec/MathFunctions.h +90 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/AltiVec/MatrixProduct.h +2937 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/AltiVec/MatrixProductCommon.h +221 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/AltiVec/MatrixProductMMA.h +629 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/AltiVec/PacketMath.h +2711 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/CUDA/Complex.h +258 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/Default/BFloat16.h +700 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/Default/ConjHelper.h +117 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/Default/GenericPacketMathFunctions.h +1649 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/Default/GenericPacketMathFunctionsFwd.h +110 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/Default/Half.h +942 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/Default/Settings.h +49 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/Default/TypeCasting.h +120 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/GPU/MathFunctions.h +103 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/GPU/PacketMath.h +1685 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/GPU/TypeCasting.h +80 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/HIP/hcc/math_constants.h +23 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/MSA/Complex.h +648 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/MSA/MathFunctions.h +387 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/MSA/PacketMath.h +1233 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/NEON/Complex.h +584 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/NEON/GeneralBlockPanelKernel.h +183 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/NEON/MathFunctions.h +75 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/NEON/PacketMath.h +4587 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/NEON/TypeCasting.h +1419 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/SSE/Complex.h +351 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/SSE/MathFunctions.h +199 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/SSE/PacketMath.h +1505 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/SSE/TypeCasting.h +142 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/SVE/MathFunctions.h +44 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/SVE/PacketMath.h +752 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/SVE/TypeCasting.h +49 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/SYCL/InteropHeaders.h +232 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/SYCL/MathFunctions.h +301 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/SYCL/PacketMath.h +670 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/SYCL/SyclMemoryModel.h +694 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/SYCL/TypeCasting.h +85 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/ZVector/Complex.h +426 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/ZVector/MathFunctions.h +233 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/arch/ZVector/PacketMath.h +1060 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/functors/AssignmentFunctors.h +177 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/functors/BinaryFunctors.h +541 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/functors/NullaryFunctors.h +189 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/functors/StlFunctors.h +166 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/functors/TernaryFunctors.h +25 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/functors/UnaryFunctors.h +1131 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/GeneralBlockPanelKernel.h +2645 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/GeneralMatrixMatrix.h +517 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h +317 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_BLAS.h +145 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/GeneralMatrixMatrix_BLAS.h +124 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/GeneralMatrixVector.h +518 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/GeneralMatrixVector_BLAS.h +136 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/Parallelizer.h +180 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/SelfadjointMatrixMatrix.h +544 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/SelfadjointMatrixMatrix_BLAS.h +295 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/SelfadjointMatrixVector.h +262 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/SelfadjointMatrixVector_BLAS.h +118 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/SelfadjointProduct.h +133 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/SelfadjointRank2Update.h +94 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/TriangularMatrixMatrix.h +472 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/TriangularMatrixMatrix_BLAS.h +317 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/TriangularMatrixVector.h +350 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/TriangularMatrixVector_BLAS.h +255 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/TriangularSolverMatrix.h +337 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/TriangularSolverMatrix_BLAS.h +167 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/products/TriangularSolverVector.h +148 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/util/BlasUtil.h +583 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/util/ConfigureVectorization.h +512 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/util/Constants.h +563 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/util/DisableStupidWarnings.h +106 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/util/ForwardDeclarations.h +322 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/util/IndexedViewHelper.h +186 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/util/IntegralConstant.h +272 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/util/MKL_support.h +137 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/util/Macros.h +1464 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/util/Memory.h +1163 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/util/Meta.h +812 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/util/NonMPL2.h +3 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/util/ReenableStupidWarnings.h +31 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/util/ReshapedHelper.h +51 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/util/StaticAssert.h +221 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/util/SymbolicIndex.h +293 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Core/util/XprHelper.h +856 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Eigenvalues/ComplexEigenSolver.h +346 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Eigenvalues/ComplexSchur.h +462 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Eigenvalues/ComplexSchur_LAPACKE.h +91 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Eigenvalues/EigenSolver.h +622 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h +418 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h +226 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Eigenvalues/HessenbergDecomposition.h +374 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h +158 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Eigenvalues/RealQZ.h +657 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Eigenvalues/RealSchur.h +558 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Eigenvalues/RealSchur_LAPACKE.h +77 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h +904 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_LAPACKE.h +87 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Eigenvalues/Tridiagonalization.h +561 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Geometry/AlignedBox.h +486 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Geometry/AngleAxis.h +247 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Geometry/EulerAngles.h +114 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Geometry/Homogeneous.h +501 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Geometry/Hyperplane.h +282 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Geometry/OrthoMethods.h +235 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Geometry/ParametrizedLine.h +232 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Geometry/Quaternion.h +870 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Geometry/Rotation2D.h +199 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Geometry/RotationBase.h +206 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Geometry/Scaling.h +188 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Geometry/Transform.h +1563 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Geometry/Translation.h +202 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Geometry/Umeyama.h +166 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Geometry/arch/Geometry_SIMD.h +168 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Householder/BlockHouseholder.h +110 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Householder/Householder.h +176 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Householder/HouseholderSequence.h +545 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h +226 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h +212 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h +229 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/IterativeLinearSolvers/IncompleteCholesky.h +394 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h +453 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h +444 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/IterativeLinearSolvers/LeastSquareConjugateGradient.h +198 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/IterativeLinearSolvers/SolveWithGuess.h +117 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/Jacobi/Jacobi.h +483 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/KLUSupport/KLUSupport.h +358 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/LU/Determinant.h +117 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/LU/FullPivLU.h +877 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/LU/InverseImpl.h +432 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/LU/PartialPivLU.h +624 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/LU/PartialPivLU_LAPACKE.h +83 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/LU/arch/InverseSize4.h +351 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/MetisSupport/MetisSupport.h +137 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/OrderingMethods/Amd.h +435 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/OrderingMethods/Eigen_Colamd.h +1863 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/OrderingMethods/Ordering.h +153 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/PaStiXSupport/PaStiXSupport.h +678 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/PardisoSupport/PardisoSupport.h +545 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/QR/ColPivHouseholderQR.h +674 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/QR/ColPivHouseholderQR_LAPACKE.h +97 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/QR/CompleteOrthogonalDecomposition.h +635 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/QR/FullPivHouseholderQR.h +713 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/QR/HouseholderQR.h +434 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/QR/HouseholderQR_LAPACKE.h +68 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SPQRSupport/SuiteSparseQRSupport.h +335 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SVD/BDCSVD.h +1366 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SVD/JacobiSVD.h +812 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SVD/JacobiSVD_LAPACKE.h +91 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SVD/SVDBase.h +376 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SVD/UpperBidiagonalization.h +414 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCholesky/SimplicialCholesky.h +697 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCholesky/SimplicialCholesky_impl.h +174 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/AmbiVector.h +378 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/CompressedStorage.h +274 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h +352 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/MappedSparseMatrix.h +67 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseAssign.h +270 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseBlock.h +571 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseColEtree.h +206 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseCompressedBase.h +370 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseCwiseBinaryOp.h +722 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseCwiseUnaryOp.h +150 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseDenseProduct.h +342 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseDiagonalProduct.h +138 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseDot.h +98 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseFuzzy.h +29 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseMap.h +305 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseMatrix.h +1518 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseMatrixBase.h +398 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparsePermutation.h +178 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseProduct.h +181 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseRedux.h +49 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseRef.h +397 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseSelfAdjointView.h +659 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseSolverBase.h +124 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseSparseProductWithPruning.h +198 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseTranspose.h +92 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseTriangularView.h +189 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseUtil.h +186 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseVector.h +478 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/SparseView.h +254 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseCore/TriangularSolver.h +315 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseLU/SparseLU.h +923 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseLU/SparseLUImpl.h +66 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseLU/SparseLU_Memory.h +226 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseLU/SparseLU_Structs.h +110 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseLU/SparseLU_SupernodalMatrix.h +375 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseLU/SparseLU_Utils.h +80 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseLU/SparseLU_column_bmod.h +181 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseLU/SparseLU_column_dfs.h +179 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseLU/SparseLU_copy_to_ucol.h +107 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseLU/SparseLU_gemm_kernel.h +280 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseLU/SparseLU_heap_relax_snode.h +126 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseLU/SparseLU_kernel_bmod.h +130 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseLU/SparseLU_panel_bmod.h +223 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseLU/SparseLU_panel_dfs.h +258 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseLU/SparseLU_pivotL.h +137 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseLU/SparseLU_pruneL.h +136 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseLU/SparseLU_relax_snode.h +83 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SparseQR/SparseQR.h +758 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/StlSupport/StdDeque.h +116 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/StlSupport/StdList.h +106 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/StlSupport/StdVector.h +131 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/StlSupport/details.h +84 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/SuperLUSupport/SuperLUSupport.h +1025 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/UmfPackSupport/UmfPackSupport.h +642 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/misc/Image.h +82 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/misc/Kernel.h +79 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/misc/RealSvd2x2.h +55 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/misc/blas.h +440 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/misc/lapack.h +152 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/misc/lapacke.h +16292 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/misc/lapacke_mangling.h +17 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/plugins/ArrayCwiseBinaryOps.h +358 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/plugins/ArrayCwiseUnaryOps.h +696 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/plugins/BlockMethods.h +1442 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/plugins/CommonCwiseBinaryOps.h +115 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/plugins/CommonCwiseUnaryOps.h +177 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/plugins/IndexedViewMethods.h +262 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/plugins/MatrixCwiseBinaryOps.h +152 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/plugins/MatrixCwiseUnaryOps.h +95 -0
- roboticstoolbox/ets/cpp-extensions/Eigen/src/plugins/ReshapedMethods.h +149 -0
- roboticstoolbox/ets/cpp-extensions/README.md +73 -0
- roboticstoolbox/ets/cpp-extensions/fknm_nb.cpp +534 -0
- roboticstoolbox/ets/cpp-extensions/ik.cpp +301 -0
- roboticstoolbox/ets/cpp-extensions/ik.h +59 -0
- roboticstoolbox/ets/cpp-extensions/linalg.cpp +316 -0
- roboticstoolbox/ets/cpp-extensions/linalg.h +64 -0
- roboticstoolbox/ets/cpp-extensions/methods.cpp +372 -0
- roboticstoolbox/ets/cpp-extensions/methods.h +32 -0
- roboticstoolbox/ets/cpp-extensions/structs.cpp +24 -0
- roboticstoolbox/ets/cpp-extensions/structs.h +62 -0
- roboticstoolbox/ets/fknm.py +366 -0
- roboticstoolbox/mobile/Animations.py +485 -0
- roboticstoolbox/mobile/Bug2.py +455 -0
- roboticstoolbox/mobile/CurvaturePolyPlanner.py +179 -0
- roboticstoolbox/mobile/DistanceTransformPlanner.py +395 -0
- roboticstoolbox/mobile/DstarPlanner.py +591 -0
- roboticstoolbox/mobile/DubinsPlanner.py +474 -0
- roboticstoolbox/mobile/EKF.py +1617 -0
- roboticstoolbox/mobile/LatticePlanner.py +419 -0
- roboticstoolbox/mobile/OccGrid.py +613 -0
- roboticstoolbox/mobile/PRMPlanner.py +348 -0
- roboticstoolbox/mobile/ParticleFilter.py +706 -0
- roboticstoolbox/mobile/PlannerBase.py +1009 -0
- roboticstoolbox/mobile/PoseGraph.py +544 -0
- roboticstoolbox/mobile/QuinticPolyPlanner.py +349 -0
- roboticstoolbox/mobile/RRTPlanner.py +359 -0
- roboticstoolbox/mobile/ReedsSheppPlanner.py +545 -0
- roboticstoolbox/mobile/Vehicle.py +1909 -0
- roboticstoolbox/mobile/__init__.py +194 -0
- roboticstoolbox/mobile/drivers.py +397 -0
- roboticstoolbox/mobile/landmarkmap.py +181 -0
- roboticstoolbox/mobile/sensors.py +789 -0
- roboticstoolbox/models/DH/AL5D.py +121 -0
- roboticstoolbox/models/DH/Ball.py +87 -0
- roboticstoolbox/models/DH/Baxter.py +91 -0
- roboticstoolbox/models/DH/Cobra600.py +63 -0
- roboticstoolbox/models/DH/Coil.py +80 -0
- roboticstoolbox/models/DH/Hyper.py +81 -0
- roboticstoolbox/models/DH/Hyper3d.py +83 -0
- roboticstoolbox/models/DH/IRB140.py +159 -0
- roboticstoolbox/models/DH/Jaco.py +102 -0
- roboticstoolbox/models/DH/KR5.py +112 -0
- roboticstoolbox/models/DH/LWR4.py +80 -0
- roboticstoolbox/models/DH/Mico.py +102 -0
- roboticstoolbox/models/DH/Orion5.py +91 -0
- roboticstoolbox/models/DH/P8.py +80 -0
- roboticstoolbox/models/DH/Panda.py +213 -0
- roboticstoolbox/models/DH/Planar2.py +69 -0
- roboticstoolbox/models/DH/Planar3.py +51 -0
- roboticstoolbox/models/DH/Puma560.py +326 -0
- roboticstoolbox/models/DH/README.md +216 -0
- roboticstoolbox/models/DH/Sawyer.py +85 -0
- roboticstoolbox/models/DH/Stanford.py +147 -0
- roboticstoolbox/models/DH/TwoLink.py +153 -0
- roboticstoolbox/models/DH/UR10.py +124 -0
- roboticstoolbox/models/DH/UR3.py +98 -0
- roboticstoolbox/models/DH/UR5.py +98 -0
- roboticstoolbox/models/DH/Uprighttl.py +24 -0
- roboticstoolbox/models/DH/__init__.py +52 -0
- roboticstoolbox/models/ETS/Frankie.py +90 -0
- roboticstoolbox/models/ETS/GenericSeven.py +54 -0
- roboticstoolbox/models/ETS/Omni.py +74 -0
- roboticstoolbox/models/ETS/Panda.py +69 -0
- roboticstoolbox/models/ETS/Planar2.py +49 -0
- roboticstoolbox/models/ETS/Planar_Y.py +65 -0
- roboticstoolbox/models/ETS/Puma560.py +70 -0
- roboticstoolbox/models/ETS/XYPanda.py +84 -0
- roboticstoolbox/models/ETS/__init__.py +20 -0
- roboticstoolbox/models/README.md +9 -0
- roboticstoolbox/models/URDF/AL5D.py +45 -0
- roboticstoolbox/models/URDF/Fetch.py +96 -0
- roboticstoolbox/models/URDF/Frankie.py +67 -0
- roboticstoolbox/models/URDF/FrankieOmni.py +94 -0
- roboticstoolbox/models/URDF/Jaco.py +49 -0
- roboticstoolbox/models/URDF/KinovaGen3.py +63 -0
- roboticstoolbox/models/URDF/LBR.py +57 -0
- roboticstoolbox/models/URDF/PR2.py +66 -0
- roboticstoolbox/models/URDF/Panda.py +60 -0
- roboticstoolbox/models/URDF/Puma560.py +90 -0
- roboticstoolbox/models/URDF/UR10.py +43 -0
- roboticstoolbox/models/URDF/UR3.py +43 -0
- roboticstoolbox/models/URDF/UR5.py +64 -0
- roboticstoolbox/models/URDF/URDFRobot.py +402 -0
- roboticstoolbox/models/URDF/Valkyrie.py +110 -0
- roboticstoolbox/models/URDF/YuMi.py +107 -0
- roboticstoolbox/models/URDF/__init__.py +51 -0
- roboticstoolbox/models/URDF/px100.py +48 -0
- roboticstoolbox/models/URDF/px150.py +48 -0
- roboticstoolbox/models/URDF/rx150.py +48 -0
- roboticstoolbox/models/URDF/rx200.py +48 -0
- roboticstoolbox/models/URDF/vx300.py +48 -0
- roboticstoolbox/models/URDF/vx300s.py +48 -0
- roboticstoolbox/models/URDF/wx200.py +48 -0
- roboticstoolbox/models/URDF/wx250.py +48 -0
- roboticstoolbox/models/URDF/wx250s.py +48 -0
- roboticstoolbox/models/__init__.py +7 -0
- roboticstoolbox/models/catalog.py +226 -0
- roboticstoolbox/robot/BaseRobot.py +2589 -0
- roboticstoolbox/robot/DHFactor.py +522 -0
- roboticstoolbox/robot/DHLink.py +949 -0
- roboticstoolbox/robot/DHRobot.py +2591 -0
- roboticstoolbox/robot/Dynamics.py +1537 -0
- roboticstoolbox/robot/ELink.py +23 -0
- roboticstoolbox/robot/ERobot.py +25 -0
- roboticstoolbox/robot/Gripper.py +242 -0
- roboticstoolbox/robot/IK.py +1378 -0
- roboticstoolbox/robot/Link.py +1557 -0
- roboticstoolbox/robot/PoERobot.py +352 -0
- roboticstoolbox/robot/Robot.py +2157 -0
- roboticstoolbox/robot/RobotKinematics.py +1505 -0
- roboticstoolbox/robot/RobotPlottingMPL.py +355 -0
- roboticstoolbox/robot/RobotProto.py +156 -0
- roboticstoolbox/robot/__init__.py +57 -0
- roboticstoolbox/robot/cpp-extensions/README.md +29 -0
- roboticstoolbox/robot/cpp-extensions/frne.h +96 -0
- roboticstoolbox/robot/cpp-extensions/frne_nb.cpp +237 -0
- roboticstoolbox/robot/cpp-extensions/ne.c +495 -0
- roboticstoolbox/robot/cpp-extensions/vmath.c +163 -0
- roboticstoolbox/robot/cpp-extensions/vmath.h +32 -0
- roboticstoolbox/robot/frne.py +51 -0
- roboticstoolbox/tools/DHFactor.py +375 -0
- roboticstoolbox/tools/Ticker.py +53 -0
- roboticstoolbox/tools/__init__.py +54 -0
- roboticstoolbox/tools/data.py +187 -0
- roboticstoolbox/tools/jsingu.py +51 -0
- roboticstoolbox/tools/null.py +48 -0
- roboticstoolbox/tools/numerical.py +96 -0
- roboticstoolbox/tools/p_servo.py +108 -0
- roboticstoolbox/tools/params.py +11 -0
- roboticstoolbox/tools/plot.py +109 -0
- roboticstoolbox/tools/trajectory.py +1152 -0
- roboticstoolbox/tools/types.py +13 -0
- roboticstoolbox/tools/urdf/__init__.py +45 -0
- roboticstoolbox/tools/urdf/tests/data/ur5.urdf +341 -0
- roboticstoolbox/tools/urdf/tests/test_urdf.py +116 -0
- roboticstoolbox/tools/urdf/urdf.py +1930 -0
- roboticstoolbox/tools/urdf/utils.py +50 -0
- roboticstoolbox_python-1.4.0.dist-info/METADATA +664 -0
- roboticstoolbox_python-1.4.0.dist-info/RECORD +610 -0
- roboticstoolbox_python-1.4.0.dist-info/WHEEL +5 -0
- roboticstoolbox_python-1.4.0.dist-info/entry_points.txt +6 -0
- roboticstoolbox_python-1.4.0.dist-info/licenses/LICENSE +21 -0
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
|
|
3
|
+
import numpy as np
|
|
4
|
+
from roboticstoolbox.ets.ET import ET
|
|
5
|
+
from roboticstoolbox.ets.ETS import ETS
|
|
6
|
+
from roboticstoolbox.robot.Robot import Robot
|
|
7
|
+
from roboticstoolbox.robot.Link import Link
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Frankie(Robot):
|
|
11
|
+
"""
|
|
12
|
+
A class representing the Franka Emika Panda robot arm. ETS taken from [1]
|
|
13
|
+
based on https://frankaemika.github.io/docs/control_parameters.html
|
|
14
|
+
|
|
15
|
+
:param et_list: List of elementary transforms which represent the robot
|
|
16
|
+
kinematics
|
|
17
|
+
:type et_list: list of etb.robot.et
|
|
18
|
+
:param q_idx: List of indexes within the ets_list which correspond to
|
|
19
|
+
joints
|
|
20
|
+
:type q_idx: list of int
|
|
21
|
+
:param name: Name of the robot
|
|
22
|
+
:type name: str, optional
|
|
23
|
+
:param manufacturer: Manufacturer of the robot
|
|
24
|
+
:type manufacturer: str, optional
|
|
25
|
+
:param base: Location of the base is the world frame
|
|
26
|
+
:type base: float np.ndarray(4,4), optional
|
|
27
|
+
:param tool: Offset of the flange of the robot to the end-effector
|
|
28
|
+
:type tool: float np.ndarray(4,4), optional
|
|
29
|
+
:param qz: The zero joint angle configuration of the robot
|
|
30
|
+
:type qz: float np.ndarray(7,)
|
|
31
|
+
:param qr: The ready state joint angle configuration of the robot
|
|
32
|
+
:type qr: float np.ndarray(7,)
|
|
33
|
+
|
|
34
|
+
References: [1] Kinematic Derivatives using the Elementary Transform
|
|
35
|
+
Sequence, J. Haviland and P. Corke
|
|
36
|
+
"""
|
|
37
|
+
|
|
38
|
+
def __init__(self):
|
|
39
|
+
|
|
40
|
+
deg = np.pi / 180
|
|
41
|
+
mm = 1e-3
|
|
42
|
+
tool_offset = (103) * mm
|
|
43
|
+
|
|
44
|
+
b0 = Link(ETS(ET.Rz()), name="base0", parent=None)
|
|
45
|
+
|
|
46
|
+
b1 = Link(ETS(ET.tx()), name="base1", parent=b0)
|
|
47
|
+
|
|
48
|
+
l0 = Link(ET.tz(0.333) * ET.Rz(), name="link0", parent=b1)
|
|
49
|
+
|
|
50
|
+
l1 = Link(ET.Rx(-90 * deg) * ET.Rz(), name="link1", parent=l0)
|
|
51
|
+
|
|
52
|
+
l2 = Link(ET.Rx(90 * deg) * ET.tz(0.316) * ET.Rz(), name="link2", parent=l1)
|
|
53
|
+
|
|
54
|
+
l3 = Link(ET.tx(0.0825) * ET.Rx(90 * deg) * ET.Rz(), name="link3", parent=l2)
|
|
55
|
+
|
|
56
|
+
l4 = Link(
|
|
57
|
+
ET.tx(-0.0825) * ET.Rx(-90 * deg) * ET.tz(0.384) * ET.Rz(),
|
|
58
|
+
name="link4",
|
|
59
|
+
parent=l3,
|
|
60
|
+
)
|
|
61
|
+
|
|
62
|
+
l5 = Link(ET.Rx(90 * deg) * ET.Rz(), name="link5", parent=l4)
|
|
63
|
+
|
|
64
|
+
l6 = Link(
|
|
65
|
+
ET.tx(0.088) * ET.Rx(90 * deg) * ET.tz(0.107) * ET.Rz(),
|
|
66
|
+
name="link6",
|
|
67
|
+
parent=l5,
|
|
68
|
+
)
|
|
69
|
+
|
|
70
|
+
ee = Link(ET.tz(tool_offset) * ET.Rz(-np.pi / 4), name="ee", parent=l6)
|
|
71
|
+
|
|
72
|
+
elinks = [b0, b1, l0, l1, l2, l3, l4, l5, l6, ee]
|
|
73
|
+
|
|
74
|
+
super(Frankie, self).__init__(
|
|
75
|
+
elinks,
|
|
76
|
+
name="Frankie",
|
|
77
|
+
manufacturer="Franka Emika, Omron",
|
|
78
|
+
keywords=("mobile",),
|
|
79
|
+
)
|
|
80
|
+
|
|
81
|
+
self.qr = np.array([0, 0, 0, -0.3, 0, -2.2, 0, 2.0, np.pi / 4])
|
|
82
|
+
self.qz = np.zeros(9)
|
|
83
|
+
|
|
84
|
+
self.addconfiguration("qr", self.qr)
|
|
85
|
+
self.addconfiguration("qz", self.qz)
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
if __name__ == "__main__": # pragma nocover
|
|
89
|
+
robot = Frankie()
|
|
90
|
+
print(robot)
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
|
|
3
|
+
import numpy as np
|
|
4
|
+
from roboticstoolbox.ets.ET import ET
|
|
5
|
+
from roboticstoolbox.ets.ETS import ETS
|
|
6
|
+
from roboticstoolbox.robot.Robot import Robot
|
|
7
|
+
from roboticstoolbox.robot.Link import Link
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class GenericSeven(Robot):
|
|
11
|
+
"""
|
|
12
|
+
Create model of a generic seven degree-of-freedom robot
|
|
13
|
+
|
|
14
|
+
robot = GenericSeven() creates a robot object. This robot is represented
|
|
15
|
+
using the elementary transform sequence (ETS).
|
|
16
|
+
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
def __init__(self):
|
|
20
|
+
|
|
21
|
+
deg = np.pi / 180
|
|
22
|
+
mm = 1e-3
|
|
23
|
+
tool_offset = (103) * mm
|
|
24
|
+
|
|
25
|
+
link_length = 0.5
|
|
26
|
+
|
|
27
|
+
l0 = Link(ET.tz(link_length) * ET.Rz(), name="link0", parent=None)
|
|
28
|
+
|
|
29
|
+
l1 = Link(ETS(ET.Ry()), name="link1", parent=l0)
|
|
30
|
+
|
|
31
|
+
l2 = Link(ET.tz(link_length) * ET.Rz(), name="link2", parent=l1)
|
|
32
|
+
|
|
33
|
+
l3 = Link(ETS(ET.Ry()), name="link3", parent=l2)
|
|
34
|
+
|
|
35
|
+
l4 = Link(ET.tz(link_length) * ET.Rz(), name="link4", parent=l3)
|
|
36
|
+
|
|
37
|
+
l5 = Link(ETS(ET.Ry()), name="link5", parent=l4)
|
|
38
|
+
|
|
39
|
+
l6 = Link(ET.tx(link_length) * ET.Rz(), name="link6", parent=l5)
|
|
40
|
+
|
|
41
|
+
ee = Link(ETS(ET.tz(-link_length)), name="ee", parent=l6)
|
|
42
|
+
|
|
43
|
+
elinks = [l0, l1, l2, l3, l4, l5, l6, ee]
|
|
44
|
+
# elinks = [l0, l1, l2, l3, l4, l5, ee]
|
|
45
|
+
|
|
46
|
+
super(GenericSeven, self).__init__(
|
|
47
|
+
elinks, name="Generic Seven", manufacturer="Jesse's Imagination"
|
|
48
|
+
)
|
|
49
|
+
|
|
50
|
+
self.qr = np.array([0, -0.3, 0, -2.2, 0, 2.0, np.pi / 4])
|
|
51
|
+
self.qz = np.zeros(7)
|
|
52
|
+
|
|
53
|
+
self.addconfiguration("qr", self.qr)
|
|
54
|
+
self.addconfiguration("qz", self.qz)
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
|
|
3
|
+
import numpy as np
|
|
4
|
+
from roboticstoolbox.ets.ET import ET
|
|
5
|
+
from roboticstoolbox.ets.ETS import ETS
|
|
6
|
+
from roboticstoolbox.robot.Robot import Robot
|
|
7
|
+
from roboticstoolbox.robot.Link import Link
|
|
8
|
+
import spatialgeometry as sg
|
|
9
|
+
import spatialmath as sm
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class Omni(Robot):
|
|
13
|
+
"""
|
|
14
|
+
A class an omnidirectional mobile robot.
|
|
15
|
+
|
|
16
|
+
:param et_list: List of elementary transforms which represent the robot
|
|
17
|
+
kinematics
|
|
18
|
+
:type et_list: list of etb.robot.et
|
|
19
|
+
:param q_idx: List of indexes within the ets_list which correspond to
|
|
20
|
+
joints
|
|
21
|
+
:type q_idx: list of int
|
|
22
|
+
:param name: Name of the robot
|
|
23
|
+
:type name: str, optional
|
|
24
|
+
:param manufacturer: Manufacturer of the robot
|
|
25
|
+
:type manufacturer: str, optional
|
|
26
|
+
:param base: Location of the base is the world frame
|
|
27
|
+
:type base: float np.ndarray(4,4), optional
|
|
28
|
+
:param tool: Offset of the flange of the robot to the end-effector
|
|
29
|
+
:type tool: float np.ndarray(4,4), optional
|
|
30
|
+
:param qz: The zero joint angle configuration of the robot
|
|
31
|
+
:type qz: float np.ndarray(7,)
|
|
32
|
+
:param qr: The ready state joint angle configuration of the robot
|
|
33
|
+
:type qr: float np.ndarray(7,)
|
|
34
|
+
|
|
35
|
+
References: [1] Kinematic Derivatives using the Elementary Transform
|
|
36
|
+
Sequence, J. Haviland and P. Corke
|
|
37
|
+
"""
|
|
38
|
+
|
|
39
|
+
def __init__(self):
|
|
40
|
+
|
|
41
|
+
l, w, h = 0.55, 0.40, 0.35
|
|
42
|
+
|
|
43
|
+
b0 = Link(ETS(ET.Rz()), name="base0", parent=None, qlim=[-1000, 1000])
|
|
44
|
+
|
|
45
|
+
b1 = Link(ETS(ET.tx()), name="base1", parent=b0, qlim=[-1000, 1000])
|
|
46
|
+
|
|
47
|
+
b2 = Link(ETS(ET.ty()), name="base2", parent=b1, qlim=[-1000, 1000])
|
|
48
|
+
|
|
49
|
+
g0 = Link(name="gripper", parent=b2)
|
|
50
|
+
|
|
51
|
+
b2.geometry = sg.Cuboid(
|
|
52
|
+
[l, w, h], base=sm.SE3(0, 0, h / 2), color=(163, 157, 134)
|
|
53
|
+
)
|
|
54
|
+
|
|
55
|
+
elinks = [b0, b1, b2, g0]
|
|
56
|
+
|
|
57
|
+
super(Omni, self).__init__(
|
|
58
|
+
elinks,
|
|
59
|
+
name="Omni",
|
|
60
|
+
manufacturer="Jesse",
|
|
61
|
+
keywords=("mobile",),
|
|
62
|
+
gripper_links=g0,
|
|
63
|
+
)
|
|
64
|
+
|
|
65
|
+
self.qr = np.array([0, 0, 0])
|
|
66
|
+
self.qz = np.zeros(3)
|
|
67
|
+
|
|
68
|
+
self.addconfiguration("qr", self.qr)
|
|
69
|
+
self.addconfiguration("qz", self.qz)
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
if __name__ == "__main__": # pragma nocover
|
|
73
|
+
robot = Omni()
|
|
74
|
+
print(robot)
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
|
|
3
|
+
import numpy as np
|
|
4
|
+
from roboticstoolbox.ets.ET import ET
|
|
5
|
+
from roboticstoolbox.robot.Robot import Robot
|
|
6
|
+
from roboticstoolbox.robot.Link import Link
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class Panda(Robot):
|
|
10
|
+
"""
|
|
11
|
+
Create model of Franka-Emika Panda manipulator
|
|
12
|
+
|
|
13
|
+
panda = Panda() creates a robot object representing the Franka-Emika
|
|
14
|
+
Panda robot arm. This robot is represented using the elementary
|
|
15
|
+
transform sequence (ETS).
|
|
16
|
+
|
|
17
|
+
ETS taken from [1] based on
|
|
18
|
+
https://frankaemika.github.io/docs/control_parameters.html
|
|
19
|
+
|
|
20
|
+
:references:
|
|
21
|
+
- Kinematic Derivatives using the Elementary Transform
|
|
22
|
+
Sequence, J. Haviland and P. Corke
|
|
23
|
+
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
def __init__(self):
|
|
27
|
+
|
|
28
|
+
deg = np.pi / 180
|
|
29
|
+
mm = 1e-3
|
|
30
|
+
tool_offset = (103) * mm
|
|
31
|
+
|
|
32
|
+
l0 = Link(ET.tz(0.333) * ET.Rz(), name="link0", parent=None)
|
|
33
|
+
|
|
34
|
+
l1 = Link(ET.Rx(-90 * deg) * ET.Rz(), name="link1", parent=l0)
|
|
35
|
+
|
|
36
|
+
l2 = Link(ET.Rx(90 * deg) * ET.tz(0.316) * ET.Rz(), name="link2", parent=l1)
|
|
37
|
+
|
|
38
|
+
l3 = Link(ET.tx(0.0825) * ET.Rx(90, "deg") * ET.Rz(), name="link3", parent=l2)
|
|
39
|
+
|
|
40
|
+
l4 = Link(
|
|
41
|
+
ET.tx(-0.0825) * ET.Rx(-90, "deg") * ET.tz(0.384) * ET.Rz(),
|
|
42
|
+
name="link4",
|
|
43
|
+
parent=l3,
|
|
44
|
+
)
|
|
45
|
+
|
|
46
|
+
l5 = Link(ET.Rx(90, "deg") * ET.Rz(), name="link5", parent=l4)
|
|
47
|
+
|
|
48
|
+
l6 = Link(
|
|
49
|
+
ET.tx(0.088) * ET.Rx(90, "deg") * ET.tz(0.107) * ET.Rz(),
|
|
50
|
+
name="link6",
|
|
51
|
+
parent=l5,
|
|
52
|
+
)
|
|
53
|
+
|
|
54
|
+
ee = Link(ET.tz(tool_offset) * ET.Rz(-np.pi / 4), name="ee", parent=l6)
|
|
55
|
+
|
|
56
|
+
elinks = [l0, l1, l2, l3, l4, l5, l6, ee]
|
|
57
|
+
|
|
58
|
+
super(Panda, self).__init__(elinks, name="Panda", manufacturer="Franka Emika")
|
|
59
|
+
|
|
60
|
+
self.qr = np.array([0, -0.3, 0, -2.2, 0, 2.0, np.pi / 4])
|
|
61
|
+
self.qz = np.zeros(7)
|
|
62
|
+
|
|
63
|
+
self.addconfiguration("qr", self.qr)
|
|
64
|
+
self.addconfiguration("qz", self.qz)
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
if __name__ == "__main__": # pragma nocover
|
|
68
|
+
robot = Panda()
|
|
69
|
+
print(robot)
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
|
|
3
|
+
import numpy as np
|
|
4
|
+
from roboticstoolbox.ets.ET2 import ET2
|
|
5
|
+
from roboticstoolbox.ets.ETS2 import ETS2
|
|
6
|
+
from roboticstoolbox.robot.Robot import Robot2
|
|
7
|
+
from roboticstoolbox.robot.Link import Link2
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Planar2(Robot2):
|
|
11
|
+
"""
|
|
12
|
+
Create model of a branched planar manipulator::
|
|
13
|
+
|
|
14
|
+
L0 -- L1 -+- L2a -- L3a -- EEa
|
|
15
|
+
|
|
|
16
|
+
+- L2b -- L3b -- EEb
|
|
17
|
+
|
|
18
|
+
``Planar_Y()`` creates a planar branched manipulator model.
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
:references:
|
|
22
|
+
- Kinematic Derivatives using the Elementary Transform
|
|
23
|
+
Sequence, J. Haviland and P. Corke
|
|
24
|
+
|
|
25
|
+
"""
|
|
26
|
+
|
|
27
|
+
def __init__(self):
|
|
28
|
+
|
|
29
|
+
a1 = 1
|
|
30
|
+
a2 = 1
|
|
31
|
+
|
|
32
|
+
l0 = Link2(ETS2(ET2.R()), name="link0")
|
|
33
|
+
l1 = Link2(ETS2(ET2.tx(a1)) * ET2.R(), name="link1", parent=l0)
|
|
34
|
+
l2 = Link2(ETS2(ET2.tx(a2)), name="ee", parent=l1)
|
|
35
|
+
|
|
36
|
+
super().__init__([l0, l1, l2], name="Planar2", comment="Planar 2D manipulator")
|
|
37
|
+
|
|
38
|
+
self.qb = np.array([0, np.pi / 2])
|
|
39
|
+
self.qz = np.zeros(2)
|
|
40
|
+
|
|
41
|
+
self.addconfiguration("qz", self.qz)
|
|
42
|
+
self.addconfiguration("qb", self.qb)
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
if __name__ == "__main__": # pragma nocover
|
|
46
|
+
robot = Planar2()
|
|
47
|
+
print(robot)
|
|
48
|
+
|
|
49
|
+
# print(robot.fkine(robot.qz))
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
|
|
3
|
+
import numpy as np
|
|
4
|
+
from roboticstoolbox.ets.ET import ET
|
|
5
|
+
from roboticstoolbox.ets.ETS import ETS
|
|
6
|
+
from roboticstoolbox.robot.Robot import Robot
|
|
7
|
+
from roboticstoolbox.robot.Link import Link
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Planar_Y(Robot):
|
|
11
|
+
"""
|
|
12
|
+
Create model of a branched planar manipulator::
|
|
13
|
+
|
|
14
|
+
L0 -- L1 -+- L2a -- L3a -- EEa
|
|
15
|
+
|
|
|
16
|
+
+- L2b -- L3b -- EEb
|
|
17
|
+
|
|
18
|
+
``Planar_Y()`` creates a planar branched manipulator model.
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
:references:
|
|
22
|
+
- Kinematic Derivatives using the Elementary Transform
|
|
23
|
+
Sequence, J. Haviland and P. Corke
|
|
24
|
+
|
|
25
|
+
"""
|
|
26
|
+
|
|
27
|
+
def __init__(self):
|
|
28
|
+
|
|
29
|
+
# deg = np.pi / 180
|
|
30
|
+
# mm = 1e-3
|
|
31
|
+
tool_offset = 1
|
|
32
|
+
|
|
33
|
+
# trunk of the tree
|
|
34
|
+
l0 = Link(ETS(ET.Rz()), name="link0", jindex=0, parent=None)
|
|
35
|
+
|
|
36
|
+
l1 = Link(ET.tx(1) * ET.Rz(), name="link1", jindex=1, parent=l0)
|
|
37
|
+
|
|
38
|
+
# branch 1
|
|
39
|
+
l2 = Link(ET.tx(1) * ET.Rz(), name="link2a", jindex=2, parent=l1)
|
|
40
|
+
|
|
41
|
+
l3 = Link(ET.tx(1) * ET.Rz(), name="link3a", jindex=3, parent=l2)
|
|
42
|
+
|
|
43
|
+
eea = Link(ETS(ET.tz(tool_offset)), name="eea", parent=l3)
|
|
44
|
+
|
|
45
|
+
# branch 2
|
|
46
|
+
l4 = Link(ET.tx(1) * ET.Rz(), name="link2b", jindex=4, parent=l1)
|
|
47
|
+
|
|
48
|
+
l5 = Link(ET.tx(1) * ET.Rz(), name="link3b", jindex=5, parent=l4)
|
|
49
|
+
|
|
50
|
+
eeb = Link(ETS(ET.tz(tool_offset)), name="eeb", parent=l5)
|
|
51
|
+
|
|
52
|
+
elinks = [l0, l1, l2, l3, l4, l5, eea, eeb]
|
|
53
|
+
|
|
54
|
+
super().__init__(elinks, name="Planar-Y")
|
|
55
|
+
|
|
56
|
+
self.qr = np.array([0, 0, np.pi / 4, 0, -np.pi / 4, 0])
|
|
57
|
+
self.qz = np.zeros(6)
|
|
58
|
+
|
|
59
|
+
self.addconfiguration("qr", self.qr)
|
|
60
|
+
self.addconfiguration("qz", self.qz)
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
if __name__ == "__main__": # pragma nocover
|
|
64
|
+
robot = Planar_Y()
|
|
65
|
+
print(robot)
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
from roboticstoolbox import ET as ET
|
|
2
|
+
from roboticstoolbox import Robot
|
|
3
|
+
import numpy as np
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
class Puma560(Robot):
|
|
7
|
+
"""
|
|
8
|
+
Create model of Franka-Emika Panda manipulator
|
|
9
|
+
|
|
10
|
+
``puma = Puma560()`` creates a robot object representing the classic
|
|
11
|
+
Unimation Puma560 robot arm. This robot is represented using the elementary
|
|
12
|
+
transform sequence (ETS).
|
|
13
|
+
|
|
14
|
+
.. note::
|
|
15
|
+
|
|
16
|
+
- The model has different joint offset conventions compared to
|
|
17
|
+
``DH.Puma560()``. For this robot:
|
|
18
|
+
|
|
19
|
+
- Zero joint angles ``qz`` is the vertical configuration,
|
|
20
|
+
corresponding to ``qr`` with ``DH.Puma560()``
|
|
21
|
+
- ``qbent`` is the bent configuration, corresponding to
|
|
22
|
+
``qz`` with ``DH.Puma560()``
|
|
23
|
+
|
|
24
|
+
:references:
|
|
25
|
+
- "A Simple and Systematic Approach to Assigning Denavit–Hartenberg
|
|
26
|
+
Parameters,", P. I. Corke, in IEEE Transactions on Robotics, vol. 23,
|
|
27
|
+
no. 3, pp. 590-594, June 2007, doi: 10.1109/TRO.2007.896765.
|
|
28
|
+
- https://petercorke.com/robotics/a-simple-and-systematic-approach-to-assigning-denavit-hartenberg-parameters
|
|
29
|
+
|
|
30
|
+
""" # noqa
|
|
31
|
+
|
|
32
|
+
def __init__(self):
|
|
33
|
+
# Puma dimensions (m)
|
|
34
|
+
l1 = 0.672
|
|
35
|
+
l2 = -0.2337
|
|
36
|
+
l3 = 0.4318
|
|
37
|
+
l4 = 0.0203
|
|
38
|
+
l5 = 0.0837
|
|
39
|
+
l6 = 0.4318
|
|
40
|
+
|
|
41
|
+
e = (
|
|
42
|
+
ET.tz(l1)
|
|
43
|
+
* ET.Rz()
|
|
44
|
+
* ET.ty(l2)
|
|
45
|
+
* ET.Ry()
|
|
46
|
+
* ET.tz(l3)
|
|
47
|
+
* ET.tx(l4)
|
|
48
|
+
* ET.ty(l5)
|
|
49
|
+
* ET.Ry()
|
|
50
|
+
* ET.tz(l6)
|
|
51
|
+
* ET.Rz()
|
|
52
|
+
* ET.Ry()
|
|
53
|
+
* ET.Rz()
|
|
54
|
+
* ET.tx(0.2)
|
|
55
|
+
)
|
|
56
|
+
|
|
57
|
+
super().__init__(
|
|
58
|
+
e, name="Puma560", manufacturer="Unimation", comment="ETS-based model"
|
|
59
|
+
)
|
|
60
|
+
|
|
61
|
+
self.qr = np.array([0, -np.pi / 2, np.pi / 2, 0, 0, 0])
|
|
62
|
+
self.qz = np.zeros(6)
|
|
63
|
+
|
|
64
|
+
self.addconfiguration("qr", self.qr)
|
|
65
|
+
self.addconfiguration("qz", self.qz)
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
if __name__ == "__main__": # pragma nocover
|
|
69
|
+
robot = Puma560()
|
|
70
|
+
print(robot)
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
|
|
3
|
+
import numpy as np
|
|
4
|
+
from roboticstoolbox.ets.ET import ET
|
|
5
|
+
from roboticstoolbox.ets.ETS import ETS
|
|
6
|
+
from roboticstoolbox.robot.Robot import Robot
|
|
7
|
+
from roboticstoolbox.robot.Link import Link
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class XYPanda(Robot):
|
|
11
|
+
"""
|
|
12
|
+
Create model of Franka-Emika Panda manipulator on an XY platform
|
|
13
|
+
|
|
14
|
+
xypanda = XYPanda() creates a robot object representing the Franka-Emika
|
|
15
|
+
Panda robot arm mounted on an XY platform. This robot is represented using the elementary
|
|
16
|
+
transform sequence (ETS).
|
|
17
|
+
|
|
18
|
+
ETS taken from [1] based on
|
|
19
|
+
https://frankaemika.github.io/docs/control_parameters.html
|
|
20
|
+
|
|
21
|
+
:references:
|
|
22
|
+
- Kinematic Derivatives using the Elementary Transform
|
|
23
|
+
Sequence, J. Haviland and P. Corke
|
|
24
|
+
|
|
25
|
+
"""
|
|
26
|
+
|
|
27
|
+
def __init__(self, workspace=5):
|
|
28
|
+
"""
|
|
29
|
+
Create model of Franka-Emika Panda manipulator on an XY platform.
|
|
30
|
+
|
|
31
|
+
:param workspace: workspace limits in the x and y directions, defaults to 5
|
|
32
|
+
:type workspace: float, optional
|
|
33
|
+
|
|
34
|
+
The XY part of the robot has a range -``workspace`` to ``workspace``.
|
|
35
|
+
"""
|
|
36
|
+
|
|
37
|
+
deg = np.pi / 180
|
|
38
|
+
mm = 1e-3
|
|
39
|
+
tool_offset = (103) * mm
|
|
40
|
+
|
|
41
|
+
lx = Link(
|
|
42
|
+
ETS(ET.tx()), name="link-x", parent=None, qlim=[-workspace, workspace]
|
|
43
|
+
)
|
|
44
|
+
|
|
45
|
+
ly = Link(ETS(ET.ty()), name="link-y", parent=lx, qlim=[-workspace, workspace])
|
|
46
|
+
|
|
47
|
+
l0 = Link(ET.tz(0.333) * ET.Rz(), name="link0", parent=ly)
|
|
48
|
+
|
|
49
|
+
l1 = Link(ET.Rx(-90 * deg) * ET.Rz(), name="link1", parent=l0)
|
|
50
|
+
|
|
51
|
+
l2 = Link(ET.Rx(90 * deg) * ET.tz(0.316) * ET.Rz(), name="link2", parent=l1)
|
|
52
|
+
|
|
53
|
+
l3 = Link(ET.tx(0.0825) * ET.Rx(90, "deg") * ET.Rz(), name="link3", parent=l2)
|
|
54
|
+
|
|
55
|
+
l4 = Link(
|
|
56
|
+
ET.tx(-0.0825) * ET.Rx(-90, "deg") * ET.tz(0.384) * ET.Rz(),
|
|
57
|
+
name="link4",
|
|
58
|
+
parent=l3,
|
|
59
|
+
)
|
|
60
|
+
|
|
61
|
+
l5 = Link(ET.Rx(90, "deg") * ET.Rz(), name="link5", parent=l4)
|
|
62
|
+
|
|
63
|
+
l6 = Link(
|
|
64
|
+
ET.tx(0.088) * ET.Rx(90, "deg") * ET.tz(0.107) * ET.Rz(),
|
|
65
|
+
name="link6",
|
|
66
|
+
parent=l5,
|
|
67
|
+
)
|
|
68
|
+
|
|
69
|
+
ee = Link(ET.tz(tool_offset) * ET.Rz(-np.pi / 4), name="ee", parent=l6)
|
|
70
|
+
|
|
71
|
+
elinks = [lx, ly, l0, l1, l2, l3, l4, l5, l6, ee]
|
|
72
|
+
|
|
73
|
+
super().__init__(elinks, name="XYPanda", manufacturer="Franka Emika")
|
|
74
|
+
|
|
75
|
+
self.qr = np.array([0, 0, 0, -0.3, 0, -2.2, 0, 2.0, np.pi / 4])
|
|
76
|
+
self.qz = np.zeros(9)
|
|
77
|
+
|
|
78
|
+
self.addconfiguration("qr", self.qr)
|
|
79
|
+
self.addconfiguration("qz", self.qz)
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
if __name__ == "__main__": # pragma nocover
|
|
83
|
+
robot = XYPanda()
|
|
84
|
+
print(robot)
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
from roboticstoolbox.models.ETS.Panda import Panda
|
|
2
|
+
from roboticstoolbox.models.ETS.Frankie import Frankie
|
|
3
|
+
from roboticstoolbox.models.ETS.Puma560 import Puma560
|
|
4
|
+
from roboticstoolbox.models.ETS.Planar_Y import Planar_Y
|
|
5
|
+
from roboticstoolbox.models.ETS.Planar2 import Planar2
|
|
6
|
+
from roboticstoolbox.models.ETS.GenericSeven import GenericSeven
|
|
7
|
+
|
|
8
|
+
# from roboticstoolbox.models.ETS.Omni import Omni
|
|
9
|
+
from roboticstoolbox.models.ETS.XYPanda import XYPanda
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
__all__ = [
|
|
13
|
+
"Panda",
|
|
14
|
+
"Frankie",
|
|
15
|
+
"Puma560",
|
|
16
|
+
"Planar_Y",
|
|
17
|
+
"Planar2",
|
|
18
|
+
"GenericSeven",
|
|
19
|
+
"XYPanda",
|
|
20
|
+
] # , "Omni"]
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
The Toolbox supports three types of model. Each is represented by a distinct class which inherits from the abstract `Robot` superclass.
|
|
2
|
+
|
|
3
|
+
* [Denavit-Hartenberg (DH) models](https://github.com/petercorke/robotics-toolbox-python/tree/master/roboticstoolbox/models/DH). These are defined using standard or modified DH parameters, with optional 3D meshes for visualisation and optional dynamic parameters.
|
|
4
|
+
* [ETS models](https://github.com/petercorke/robotics-toolbox-python/tree/master/roboticstoolbox/models/ETS). There are defined using a sequence of elementary transformations (rotation and translations), and is a quick and intuitive way to describe a robot, see [this article](https://petercorke.com/robotics/a-simple-and-systematic-approach-to-assigning-denavit-hartenberg-parameters/).
|
|
5
|
+
* [URDF models](https://github.com/petercorke/robotics-toolbox-python/tree/master/roboticstoolbox/models/URDF). These models are defined by a Unified Robot Description Format file, an XML format file. Models exist for the classic Puma560 robot as well as the Franka-Emika Panda, the Universal robotics range and all the Interbotix hobby-class robots.
|
|
6
|
+
|
|
7
|
+
In each folder you will find a README describing how to create your own model.
|
|
8
|
+
|
|
9
|
+
If you think your model might be interesting to others consider submitting a pull request.
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
|
|
3
|
+
import numpy as np
|
|
4
|
+
from roboticstoolbox.models.URDF.URDFRobot import URDFRobot
|
|
5
|
+
from math import pi
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class AL5D(URDFRobot):
|
|
9
|
+
"""
|
|
10
|
+
Class that imports a AL5D URDF model
|
|
11
|
+
|
|
12
|
+
``AL5D()`` is a class which imports a Lynxmotion AL5D robot definition
|
|
13
|
+
from a URDF file. The model describes its kinematic and graphical
|
|
14
|
+
characteristics.
|
|
15
|
+
|
|
16
|
+
.. runblock:: pycon
|
|
17
|
+
|
|
18
|
+
>>> import roboticstoolbox as rtb
|
|
19
|
+
>>> robot = rtb.models.URDF.AL5D()
|
|
20
|
+
>>> print(robot)
|
|
21
|
+
|
|
22
|
+
Defined joint configurations are:
|
|
23
|
+
|
|
24
|
+
- qz, zero joint angle configuration, 'L' shaped configuration
|
|
25
|
+
- up, robot poiting upwards
|
|
26
|
+
|
|
27
|
+
.. codeauthor:: Tassos Natsakis
|
|
28
|
+
"""
|
|
29
|
+
|
|
30
|
+
def __init__(self):
|
|
31
|
+
super().__init__(
|
|
32
|
+
"lynxmotion_al5d_description/urdf/al5d_robot.urdf",
|
|
33
|
+
manufacturer="Lynxmotion",
|
|
34
|
+
)
|
|
35
|
+
|
|
36
|
+
# zero angles, upper arm pointing up, lower arm straight ahead
|
|
37
|
+
self.addconfiguration("qz", np.array([0, 0, 0, 0]))
|
|
38
|
+
|
|
39
|
+
# reference pose robot pointing upwards
|
|
40
|
+
self.addconfiguration("up", np.array([0.0000, 0.0000, 1.5707, 0.0000]))
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
if __name__ == "__main__": # pragma nocover
|
|
44
|
+
robot = AL5D()
|
|
45
|
+
print(robot)
|