Tom13a的博客

私信 关注
Tom13a
码龄2年

执着的机械臂研究者,对技术有较高热忱。

  • 30,206
    被访问量
  • 25
    原创文章
  • 144,671
    作者排名
  • 53
    粉丝数量
  • 于 2019-05-25 加入CSDN
获得成就
  • 获得21次点赞
  • 内容获得22次评论
  • 获得87次收藏
荣誉勋章
兴趣领域
  • #人工智能
    #机器学习
TA的专栏
  • RAA软件升级信息
    2篇
  • vector使用技巧
    1篇
  • vector内存占用分析
    1篇
  • 笔记
    3篇
  • 个人学习笔记
    22篇
  • 最近
  • 文章
  • 资源
  • 问答
  • 课程
  • 帖子
  • 收藏
  • 关注/订阅

c++ 多维vector内存占用问题分析

当我们需要长度不定的容器时,vector是一个不错的选择,它可以存储单维度的不定个数的数据,也可以叠加维度,实现不定长的二维甚至多维数组的功能。比如使用vector<vector<double>>就可以定义二维的vector容器。vector容器的特性是在被定义的时候,它就会自动预留16个存储空间,在二维的情况下,如果让他存储double数据,它最少的内存空间需求就是81616=2592 Byte(一个double是8个Byte)如果是3维的vectorvector<v
原创
83阅读
0评论
0点赞
发布博客于 3 月前

字符串处理,转自新浪,

转自http://m.blog.sina.com.cn/s/blog_6fd98c43010147on.html#page=1不想写原创,但平板编辑只能选原创,只好奉上链接并向原作者致敬。C++ 和 MFC 中去掉字符串最后一个字符2012-04-05 09:28:29A-A+CString 类中有两个成员函数:.GetLength()得到字符串的长度。.Left(int nCount) 从左边截取字符串,nCount是截取的字符长度。故你要删除最后一个g;只要从左边截取该字符串的长度-1
原创
33阅读
0评论
0点赞
发布博客于 4 月前

c/c++读写txt文件一例

近期在使用c/c++读写机械臂设置信息时,发现网上找到的例程大部分都使用fscanf()fopen()函数而不是用的fscanf_s()fopen_s()VS2019编译器因此有安全有错误提示,于是我进行了修改测试,下面是源码,实测可用:#include<stdio.h>#include<iostream>// By Tom Gong using namespace std;void readfile(void){ FILE* stream;
原创
41阅读
0评论
0点赞
发布博客于 7 月前

RAA升级至1.03a版

此次升级,进行如下改动:去掉了心跳包机制,也就是说客户端程序不再需要过滤服务器发来的98号包。客户端断开后,RAA可以接受立即重联。不再有10秒等待时间。
原创
106阅读
0评论
0点赞
发布博客于 7 月前

使用vrep仿真所需要的库

RAA 用户在使用例程2 进行vrep仿真时,需要安装一个vrep的库,这个库用pip不能下载的,可以 给我发邮件索取,发送至 gongal@163.com不是RAA用户也可以找我索取,没问题。收到文件后,解压,放置到 类似下面路径的位置:E:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64\Lib,也可以放到其它位置,在编译器里指定好,让程序能找到即可。...
原创
129阅读
0评论
0点赞
发布博客于 8 月前

使用c++ 遇到的一个小坑

当我使用vs2019编译器 做c++代码时,搭建好环境后,从网上下载了一个程序,运行无误,但当我想在程序里加上socket模块时,出现奇怪的波浪线报错:c++包含引起的错误 头停止点不能位于链接块中,我按照网上的办法先如下操作:工具–选项–文本编辑器–C/C++–高级–禁用IntelliSence–True仍然不能解决问题。后来根据提示仔细查找winsock2.h这个文件,发现其第101行,莫名其妙多了一个"{",我果断删除了它,居然就都ok了。为何标准头文件里会有多一个半边大括弧的问题?费解。
原创
96阅读
0评论
0点赞
发布博客于 8 月前

RAA1.00a多轴机械臂算法机软件发布

RAA1.00a多轴机械臂算法机软件发布多轴机械臂正逆解是一个复杂程度固定,所需数学知识面较为固定的有一定难度的数学题。业界已经有一些系统能帮人们算出正逆解了,只是在使用方便程度上有所差异,在路径规划的方便性和奇异解等问题的解决上还有可以提高的空间。另外,软件作者对机器人运动学和动力学的应用侧重方面有自己的一些见解,本软件也是作者“更多的依赖运动学,更少的借助动力学”理念的一种表达,作者将机械...
原创
190阅读
0评论
0点赞
发布博客于 9 月前

numpy,math库耗时计算

经过测试,发现math里的三角函数要比numpy里的三角函数快20%左右。在进行矩阵和数组运算时,只有numpy库支持,但矩阵相乘还不如直接用称号速度快。求逆时,用numpy的linalg.inv()速度要比直接用.I快50%...
原创
88阅读
0评论
0点赞
发布博客于 1 年前
Strength and precision---An imaginery of a new type of Robot-Arm
发布Blink于 1 年前
UR机器人上位机通信-python版(二)
发布Blink于 1 年前

数组切片插接处理笔记

以下记录数组切片中的几个常用办法point_orientation1=np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]])point_orientation2=np.array([[1,5,8,4],[5,3,7,8],[9,18,11,12],[13,14,15,16]])ltpart1=point_orientation1...
原创
107阅读
0评论
0点赞
发布博客于 2 年前

克服奇异解的演示视频

通过算法调整细化,六轴机械臂的奇异解可以被平滑的路过。因而机械臂路径规划者可以不用再被被奇异点问题所困扰,并刻意规避奇异点。我们都知道,UR机械臂在5轴为0的时候,是奇异点位,路过这样的点位,机械臂关节容易出现剧烈抖动。下面的链接,以UR5机械臂为模型进行仿真视频,让其末端路过一条由奇异点构成的圆形路径,并平滑通过:https://v.youku.com/v_show/id_XNDQ0NTU...
原创
199阅读
6评论
0点赞
发布博客于 2 年前

UR机械臂的“运动性奇异”

In order to avoid the conventional singular points of some spherical wrist manipulators, the UR's mechanical arms do have fewer conventional singular positions by having a peculiar body construct. But the price is not very low, It is that when these poses
原创
1444阅读
0评论
1点赞
发布博客于 2 年前

机械臂实时控制仿真演示

在下面的视频链接中,展示了在v-rep仿真软件平台上使用api接口,用python程序中通过键盘按键对仿真对象进行控制的过程:先是上下左右前后运动,再就是各方向上的扭转运动。https://v.youku.com/v_show/id_XNDQxODQ5NjA5Ng==.html?spm=a2hzp.8244740.0.0...
原创
736阅读
0评论
0点赞
发布博客于 2 年前

两块arduino板子的iic通信代码

两块arduino板子的iic通信代码,不是我的原创,我测试过比较好用。
原创
703阅读
0评论
0点赞
发布博客于 2 年前

iic两块板子通信.zip

两个arduino板子之间的iic通信代码,是网上程序员的作品,非我原创,但现在找不到出处了。
zip
发布资源于 2 年前

计算速度对比:python vs. c语言程序

完成机械臂算法从python到c的移植以后,我把python和c代码的运算速度做了一个大致比较,结果如下:python加载10000次正逆运算,需要11秒左右,如果只做逆运算10000次,9秒左右。c语言代码就快多了,加载10000次正逆运算,需要一秒左右。作为上位机,其实两者算力都够用了。因为即便python完成一次逆运算,只需要0.1ms,这已经相当不错了。...
原创
1003阅读
0评论
0点赞
发布博客于 2 年前

空间路径规划初探(画空间内任意平面上的圆)

如下程序,通过修改前面的向量描述、圆心坐标和半径值,可以做出空间内任何圆的插值点。#Authered by Tom Gong gongal@163.com import numpy as np import math # 所在平面的任意两个正交向量描述 nx=1 ny=0 nz=0 ox=0 oy=0 oz=1 ...
原创
546阅读
0评论
0点赞
发布博客于 2 年前

Strength and precision---An imaginery of a new type of Robot-Arm

Huge power and great precision is a paradox in a Robot, just like different kinds of weighing instruments, those to weigh jeweleries and those used to weigh a vehicle definitely have the same order of...
原创
143阅读
0评论
0点赞
发布博客于 2 年前

用python写机械臂基础代码的

 
发布Blink于 2 年前

针对一款六轴机器臂的DH建模求解

有幸拿到一款喷涂机器人的部分数据资料,着手写它的运动学算法。第一步:DH建模根据图纸资料,建立dh参数表格如下:
原创
2772阅读
5评论
6点赞
发布博客于 2 年前

征集难于处理的机械臂奇异点位

目前,经过折腾机械臂正逆算法几个月,恍恍惚惚觉得有一些解决逆运动学算法的心得了,想挑战一下奇异点算法。只使用矩阵推导的办法,确实有无解的点,但是如果我们结合空间几何呢? 手上有奇异点的网友,希望我们一起研究,共同进步。...
原创
742阅读
0评论
0点赞
发布博客于 2 年前

逆解常用公式(转自itfanr)

转载
160阅读
0评论
1点赞
发布博客于 2 年前

一个矩阵代数分析的辅助程序

人们在处理机械臂关节矩阵时,需要大量的手工相乘代数运算。 由于是推导公式,而不是进行数值计算,计算机不能直接参与协助。由于推导过程中,有大量的多项式代数相乘,手工抄写极易出错。笔者于是想通过python程序来协助完成部分任务。于是完成了如下程序,改程序能实现两个代数4*4矩阵的乘法。本程序有参考网络上defias的程序语法,在此对defias表示感谢。import xlrdimport...
原创
269阅读
0评论
1点赞
发布博客于 2 年前

test1.xlsx

程序中用到的exel文件,关节代数矩阵。
xlsx
发布资源于 2 年前

庆祝完成ur机器臂的八组逆解

经过一段时间的努力和纠错,终于把ur机器臂正逆运动学求解代码全部拿下。没有借助ros和任何机器人库。完全原创。中间有一个第五轴角度负值不能求逆解的问题,成为最大的一个bug,最后自己拿pvc管子制作了一个模型,才发现其中原理,补足第六角的玉值,一切都ok了。非常有成就感。...
原创
1117阅读
11评论
1点赞
发布博客于 2 年前

一次艰苦的串口通信尝试--pc端的python vs. arduino

上位机的pc与下位机arduino进行数据通信,如下为我写的代码,实测可用:硬件:win7上位机,arduino uno,arduino usb连接线。上位机代码:# 作者 Tom13a gongal@163.comimport serialimport structimport timeimport numpy as npser = serial.Serial('com7'...
原创
1077阅读
0评论
0点赞
发布博客于 2 年前

实测发现python的numpy.round()函数有bug,只好自写函数代替它

代码如下,仅用于4*4矩阵:#define round function for matrix ,author‘s mailbox: gongal@163.com :import numpy as npfrom numpy import *;import mathdef roundt(A,a): B=array(A) for i in range(0,4): for...
原创
891阅读
0评论
0点赞
发布博客于 2 年前

Python如何从矩阵中读写单个元素的值

为了给矩阵某一个元素的值进行提取,我从网上找过一些办法,但都不是很全面,经过学习试验发现如下规律:1.一个矩阵如果用numpy.eye(),或者列举的方法赋值,那么可以用如下方法进行取值和赋值:from numpy import *k1=eye(7)j=k1[1][2]j0.02.也可以反向赋值,给矩阵里的元素赋值:>>> from numpy imp...
原创
10974阅读
0评论
0点赞
发布博客于 2 年前

DH坐标系的建立笔记

https://www.cnblogs.com/mightycode/p/9095059.html如上这篇文章用于学习DH坐标系建立,非常不错,推荐初学者阅读。在此建立笔记如下:1.坐标系的建立隐含原则:文章右上方的草图,即为各伺服电机的初始位置,也就是 theta=0的位置。 我经过反复调测,得到这个结论。2.实际调试中,应该会对伺服电机的正负转向予以定义,用于适应开始建立的这个模型。...
原创
771阅读
0评论
2点赞
发布博客于 2 年前

关于VS+openCV环境下debug和release切换的问题

我的vs版本是2019,opencv版本是4.1.0新手使用vs+openCV,在设置编程环境时,网上有大把的debug模式,一步一步跟着那些文档走,我们可以设置好一个debug方式的“本地windows调试器”,然而,如果你想把生成的可执行文件交给其它电脑运行时,可能需要你做出release版本的可执行文件集。根据我的亲测,需要把属性管理器中release|64下新建一个属性项目表,然后右键...
原创
702阅读
0评论
2点赞
发布博客于 2 年前