关于矩阵
本帖最后由 碇源堂 于 2013-2-3 10:30 编辑有没有矩阵库之类的?因为计算机器人的各个关节位置需要矩阵来计算【矩阵可是好东西啊,只要是个人都能用矩阵来精确计算机器人的姿态】
可以使用C语言的矩阵库函数,有很多现成的版本。 春泥蛋炒饭 发表于 2013-2-2 13:27 static/image/common/back.gif
可以使用C语言的矩阵库函数,有很多现成的版本。
感谢,具体实施方法是直接下载C语言函数库添加进去?还是直接使用C语言的矩阵库函数? 碇源堂 发表于 2013-2-2 18:17 static/image/common/back.gif
感谢,具体实施方法是直接下载C语言函数库添加进去?还是直接使用C语言的矩阵库函数?
要把C的矩阵库目录(含h和CPP文件)考到arduino的libraries目录下,然后在你的arduino程序里声明,编译应该没问题,因为arduino的编程语言是C/C++的子集,最需要注意的是arduino芯片的内存很小(uno只有2K的SRAM),不能操作太大的矩阵。这里有几个免费的C/C++矩阵库供参考:http://www.ibm.com/developerworks/cn/linux/other/matrix/index.html 春泥蛋炒饭 发表于 2013-2-3 07:52 static/image/common/back.gif
要把C的矩阵库目录(含h和CPP文件)考到arduino的libraries目录下,然后在你的arduino程序里声明,编译应 ...
感激不尽,我用的ARDUINO板子是目测目前官方板子里最豪华的DUE,而且是2块通过串口通讯来运行,SRAM一块有96K,应该能够用吧………… 碇源堂 发表于 2013-2-3 10:30 static/image/common/back.gif
感激不尽,我用的ARDUINO板子是目测目前官方板子里最豪华的DUE,而且是2块通过串口通讯来运行,SRAM一块有 ...
Due很牛了,没问题。几十个舵机也是小菜 春泥蛋炒饭 发表于 2013-2-3 12:55 static/image/common/back.gif
Due很牛了,没问题。几十个舵机也是小菜
那就行,不过没找到中文资源…………咳咳…………英语能力勉强…………而且我只找到了.H文件,CPP没找到………… 春泥蛋炒饭 发表于 2013-2-3 12:55 static/image/common/back.gif
Due很牛了,没问题。几十个舵机也是小菜
请问一下,“几十个舵机”
是怎么计算出来的??
平均一个舵机需要几个输入输出口?
这种库很多
比如:
http://playground.arduino.cc/Code/MatrixMath
提供了加减乘除、求逆、求转制
把
http://arduino.cc/playground/uploads/Code/MatrixMath.zip
放到"libraries\".目录里,
还有例子程序
可能自己要改一下
#include "WProgram.h"
改成
#include <Arduino.h>
还有一点,矩阵的元素是float类型。
碇源堂 发表于 2013-2-3 10:30 static/image/common/back.gif
感激不尽,我用的ARDUINO板子是目测目前官方板子里最豪华的DUE,而且是2块通过串口通讯来运行,SRAM一块有 ...
代码应该占用不了多少空间,要看你的矩阵的数量和大小。
常见用于旋转的矩阵,我记得是4x4,
如果用float (每个float占4 bytes),一个矩阵就是4x4x4=64字节
1K 内存可以建立 1024/16=64个矩阵
对机器人不熟悉,一个关节的所有信息(位置、速度、加速度、方向、角速度等等),
应该用8个矩阵可以描述了吧?
StrongZhu 发表于 2013-2-3 18:21 static/image/common/back.gif
代码应该占用不了多少空间,要看你的矩阵的数量和大小。
常见用于旋转的矩阵,我记得是4x4,
我觉得应该够了…………毕竟96K这种程度的内存足够计算很大的矩阵了,就算机器人用的矩阵比较独特和复杂…………不过比较担心84MHZ的运行速度啊,不知道能不能快速计算完30个传感器回传的数据做成的矩阵和计算出机体动作的矩阵,接着生成动作指令…………如果不能在0.1-0.5S内完成那就蛋疼了…………不过刚刚订购了一枚树莓派B版512M的,700-800MHZ的速度应该足够了…………我想…………潜心研究如何用树莓派计算矩阵ING………… StrongZhu 发表于 2013-2-3 18:21 static/image/common/back.gif
代码应该占用不了多少空间,要看你的矩阵的数量和大小。
常见用于旋转的矩阵,我记得是4x4,
我觉得应该够了…………毕竟96K这种程度的内存足够计算很大的矩阵了,就算机器人用的矩阵比较独特和复杂…………不过比较担心84MHZ的运行速度啊,不知道能不能快速计算完30个传感器回传的数据做成的矩阵和计算出机体动作的矩阵,接着生成动作指令…………如果不能在0.1-0.5S内完成那就蛋疼了…………不过刚刚订购了一枚树莓派B版512M的,700-800MHZ的速度应该足够了…………我想…………潜心研究如何用树莓派计算矩阵ING………… 碇源堂 发表于 2013-2-3 19:44 static/image/common/back.gif
我觉得应该够了…………毕竟96K这种程度的内存足够计算很大的矩阵了,就算机器人用的矩阵比较独特和复杂… ...
查了一下,arduino是8bit的cpu,用来做浮点运算,确实压力比较大。
StrongZhu 发表于 2013-2-3 18:04 static/image/common/back.gif
请问一下,“几十个舵机”
是怎么计算出来的??
平均一个舵机需要几个输入输出口?
楼主用矩阵不是为了控制舵机,而是为了管理各关节的位置。这里舵机数是指关节数,考虑的是把各个关节的姿态用一个矩阵来描述时,矩阵操作所需的内存是否比arduino板能提供的内存还大。和舵机控制和I/O口无关的。 StrongZhu 发表于 2013-2-3 20:39 static/image/common/back.gif
查了一下,arduino是8bit的cpu,用来做浮点运算,确实压力比较大。
其实我还有杀手锏的…………树莓派2,因为咱在国外,所以体验到了35美刀超值价格…………现在正在运输中,不过最快也要6号才能到…………TAT…………STM32开发板比ARDUINO MINI都便宜…………嗯F103的…………不过占地太大…………机器人没那麽多空间放…………
页:
[1]