出于好奇,有没有人知道用于编程Roomba的平台和编程语言?我不是在谈论售后市场工具包,而是用于在工厂实施算法的内容?
几个朋友和我将建立简单的机器人跟踪黑色表面上的白线,我们以前从未做过这种事情,我有非常高水平的攻击计划,
获得满足所有计算需求的迷你atx板,跟踪道路的网络摄像头和2个用于推进方向的电动马达.
我主要担心的是,有没有更好的方法来追踪这条路?或者网络摄像头是否适合这项工作?
编辑:
跟着使用Photoresistor的答案似乎是要走的路,我还有一个问题就是有信号,在轨道的右边告诉机器人转向哪个方向.再次白色黑色.比如我必须在丁字路口左转.有没有办法在没有相机的情况下处理这个问题?
编辑:提名重新开放,因为这最终属于常见问题解答部分" 编程专业独有的事项 ".
我想用C#编写机器人技术.这个问题是关于现有的套件/组件.我欢迎任何指示从哪里开始.例如:Robotics Studio是这个项目的一个很好的平台吗?
使用将是一个业余爱好项目,我编程机器人在我家里开车并进行维护(比如给我一杯水).我想把我的努力放在物体识别和控制运动(驾驶,武器等)上.我不想花时间建造一个机器人.从这个意义上说,这不是一个机器人项目,它是一个软件项目.
是否有任何带有.Net SDK的人体大小的机器人(或者我可以P/Invoke的东西)?
它不需要是完全成人的大小,只要它可以到达桌子和类似的东西.它也不必看起来像人类.
我根据其硬件规格和以下关节轴将Baxter臂机器人的正向运动学功能放在一起:
以下正向运动学的关节位置与相应的笛卡尔坐标不匹配,我在这里做错了什么?
def FK_function_2(joints):
def yaw(theta): #(rotation around z)
y = np.array([[np.cos(theta), -np.sin(theta), 0],
[np.sin(theta), np.cos(theta), 0],
[0, 0, 1] ])
return y
R01 = yaw(joints[0]).dot(np.array([[-1, 0, 0],
[0, 0, 1],
[0, 1, 0]]))
R12 = yaw(joints[1]).dot(np.array([[0, 0, -1],
[-1, 0, 0],
[0, 1, 0]]))
R23 = yaw(joints[2]).dot(np.array([[-1, 0, 0],
[0, 0, 1],
[0, 1, 0]]))
R34 = yaw(joints[3]).dot(np.array([[-1, 0, 0],
[0, 0, 1],
[0, 1, 0]]))
R45 = yaw(joints[4]).dot(np.array([[-1, 0, 0],
[0, 0, 1],
[0, 1, 0]])) …Run Code Online (Sandbox Code Playgroud) 我正在尝试用MRS来教自己一些基本的AI; 我想要做的是制造一个火箭实体,包括矢量排气和分段.任何人都知道如何制作一个可以飞行的实体?或者我只需要不断向上施力?
我参与了一个项目,除其他外,必须控制各种实验室仪器(机器人,读者等......)
大多数这些仪器都是通过基于DCOM的驱动程序,串行端口或通过启动具有各种参数的专有程序来控制的.其中一些程序或驱动程序包括模拟模式,有些则不包括.显然,我的开发计算机无法连接到所有仪器,虽然我可以为驱动程序包含模拟模式的仪器启动虚拟机,但如果没有实际仪器,则无法测试某些内容.
现在,我自己的代码主要不是关于仪器的实际操作,而是关于启动操作,确保一切正常,并在它们之间进行同步.它是用Java编写的,使用各种库与仪器及其驱动程序进行交互.
我想为各种仪器控制模块编写单元测试.但是,因为仪器可以在很多方面失败(其中一些是记录的,其中一些不是),因为代码依赖于这些部分随机输出,我对于如何为这些部分编写单元测试有点迷失.我的代码.我考虑过以下解决方案:
虽然我目前正在考虑与后者合作,但我错过了一些东西吗?有一个更好的方法吗?
我正在尝试为三角洲机器人组合一个简单的模拟,我想使用正向运动学(直接运动学)通过传递3个角度来计算末端执行器在空间中的位置.
我开始使用Trossen机器人论坛Delta机器人教程,我可以理解大部分数学,但不是全部.当我试图计算3个球体相交的点时,我在前向运动学的最后部分迷路了.我一般都看过球面坐标,但无法找出用于找到旋转的两个角度(到E(x,y,z)).我看到他们正在解决球体的方程式,但这就是我迷失的地方.



三角洲机器人是并联机器人(意味着基座和末端执行器(头部)始终保持平行).基部和末端执行器是等边三角形,腿(通常)放置在三角形边的中间.
Delta机器人底座的侧面有标记f.三角机器人的效应器的一侧被标记e.腿的上部标记rf,下侧re.
原点(O)位于基本三角形的中心.伺服电机位于基本三角形的中间(F1,F2,F3).关节标记为J1,J2,J3.小腿在点E1,E2,E3处连接末端执行器,并且E是末端执行器三角形的中心.
我可以轻松计算点F1,F2,F3和J1,J2,J3.这是E1,E2,E3我遇到了问题.根据解释,我理解J1点向内翻转一点(末端效应器的中位数的一半)到J1',它成为半径re(小腿长度)的球体的中心.对所有关节执行此操作将导致3个球体在相同位置相交:E(x,y,z).通过求解球面方程,我们找到E(x,y,z).
还有一个公式解释:

但这就是我迷路的地方.我的数学技能不是很好.有人可以用更简单的方式解释这些,因为我们对数学的了解较少吗?
我还使用了提供的示例代码(如果您有支持WebGL的浏览器),您可以在这里运行.单击并拖动以旋转场景.为了控制三个角度,使用q/Q,w/W,e/E来减小/增加角度.
完整代码清单:
//Rhino measurements in cm
final float e = 21;//end effector side
final float f = 60.33;//base side
final float rf = 67.5;//upper leg length - radius of upper sphere
final float re = 95;//lower leg length - redius of lower sphere (with offset will join in E(x,y,z))
final float sqrt3 = sqrt(3.0);
final float sin120 = …Run Code Online (Sandbox Code Playgroud) 有没有人知道机器人开发者环境非常适合测试无人机的AI程序(例如,四轴飞机,飞机,直升机等)?我想像微软机器人开发者工作室这样的东西,包括虚拟环境(如带有重力,风等的室外环境)来测试飞行动力学.我想选择向虚拟无人机添加传感器,例如gps,高度计,陀螺仪等,然后AI程序可以使用它来操纵无人机.
robotics artificial-intelligence machine-learning robotics-studio ar.drone
我正在处理一个过去几周的申请,涉及一些三角学,目前我被困住了.如下图所示,我有一个圆形项目(位置#1的绿色圆圈),我知道中心点(让我们称之为X1,Y1).圆圈有另一个点(橙色圆圈)偏离中心位置 - 在另外两个标记(蓝色圆圈)之间.这些标记可以四处移动.计算橙色点的坐标(我们称之为X2,Y2),并计算蓝色线相对于圆的水平线的角度(称之为角度).

我可以通过以下方式计算圆心和点之间的差异:
deltaX = X2-X1
deltaY = Y2-Y1
我需要移动并旋转绿色圆圈(CW或CCW - 以较短者为准)从它的起始位置(位置1)到位置2.这意味着角度可以是负的或正的.蓝线必须以垂直方向结束,橙色点位于位置2的中心(红色方块).我知道位置2中心的坐标(让我们称之为X3,Y3).位置#1和位置#2彼此正好相差90度.
我以为我可以使用一些计算点的旋转的trig标识公式,如下所示:
offsetX = deltaX*cos(90-Angle) - deltaY*sin(90-Angle)
offsetY = deltaX*sin(90-Angle)+ deltaY*cos(90-Angle)
当我移动/旋转到位置2时,我希望这些偏移是我需要将圆圈调整到它的新中心.
X3 = X3 + offsetX
Y3 = Y3 + offsetY
但是,当我尝试使用这个数学时,它不会将圆圈的橙色标记放在方形的中心.不确定我的方程和计算是否正确,基于旋转角度(正或负,CW或CCW)或我是否正确使用角度(我从90度减去已知角度).如何正确计算最终点/位置?任何帮助和示例将不胜感激!
非常感谢您的宝贵时间!
我正在尝试使用pybullet中的模拟 PR2 机器人进行笛卡尔控制。在 pybullet 中,函数calculateInverseKinematics(...)可以选择采用关节下限、上限、关节范围和静止姿势来进行零空间控制。
首先,使用零空间控制而不是“常规”逆运动学可以获得什么实际好处?
其次,为什么要指定关节范围,这不完全是由上下限决定的吗?连续关节的范围是多少?
休息姿势到底是什么?这只是机器人开始执行任务之前的初始姿势吗?
robotics ×10
c# ×2
java ×2
kinematics ×2
math ×2
.net ×1
ar.drone ×1
junit ×1
python ×1
trigonometry ×1