- 博客(43)
- 资源 (9)
- 收藏
- 关注
原创 电机PID调节
伺服驱动器对电机的控制分为电流环、速度环、位置环。电流环的响应最快,位置环的响应最慢。调节参数时遵守响应原则,否则会造成机械振动。调节步骤 调节电流环参数 -> 速度环参数 -> 位置环参数电流环参数 电流环增益的调整可以改善系统的响应速度。 电流环比例增益越大,响应性越好,反之越差,设置值过大会产生震荡。 积分时间常数越小,响应...
2018-05-28 19:41:29 18422
原创 VS C++ 共享内存 CreateFileMapping
创建共享内存HANDLE CreateFileMapping( HANDLE hFile, // handle to file to map LPSECURITY_ATTRIBUTES lpFileMappingAttributes, // optional security attributes, 是否被继承 DWORD flProtect, ...
2018-05-24 17:42:25 8629
原创 VS C++ 互斥量 CreateMutex
创建一个有名和匿名的互斥锁HANDLE CreateMutex( LPSECURITY_ATTRIBUTES lpMutexAttributes, // pointer to security attributes BOOL bInitialOwner, // flag for initial ownership LPCTSTR lpName // po...
2018-05-24 16:34:12 4103
原创 YAML 文件格式介绍
YAML官方网址 http://yaml.org/YAML 不是标记语言,跟JSON类似,用途是对数据进行序列化。在线的YAML工具 http://www.json2yaml.com/
2018-05-24 13:35:42 1348
原创 ROS kinetic 机器人的组成
从控制角度看机器人的组成控制系统:人体大脑,实现任务及信息的处理,输出控制命令信号。驱动系统:人体的肌肉和筋络,负责驱动执行机构,将控制系统下达的命令转换成执行机构需要的信号。传感系统:人体的感官和神经,主要完成信号的输入和反馈。执行机构:人体的手和脚,直接面向工作对象的机械装置。机器人系统构建执行机构的实现驱动系统的实现内部传感系统的实现控制系统的实现外部传感系统的实现 :http://wi...
2018-05-23 20:57:44 675 1
原创 机器人控制相关术语
位置控制 使机器人的手、臂等到达目标位置的控制成为位置控制。过调节 停止 时如果急剧减速,由于惯性会发生超调。机器人组成 机器人由检测部分、控制部分、驱动部分、动力源(电机)等构成。 从传感器(检测部分)获取位置、速度、滑动等信息,送到作为头脑的计算机(控制部分),计算出手臂的移动速度、作用于手臂的力,以及手的抓持力等,然年将计算结果送到驱动...
2018-05-18 13:47:29 1462
原创 ubuntu16.04 显卡篇
查看显卡ubuntu@T430:~$ lspci |grep VGA00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)01:00.0 VGA compatible controller: NVIDIA Corporation GF108M [...
2018-05-17 22:57:54 3012
原创 伺服电机(servo motor)
伺服电机的电子齿轮比理解 比如:电子齿轮比是1,脉冲当量就是1mm(即物体在你发1个脉冲时运行的距离); 电子齿轮比改为2,对应的脉冲当量就变成2mm。 当电子齿轮比是1的时候,给伺服放大器1个脉冲,伺服放大器就按1个脉冲来运行; 当电子齿轮比是2的时候,给伺服放大器1个脉冲,伺服放...
2018-05-17 10:25:40 9059 1
原创 jog术语
工业机器人中经常见到jog这个词,意为“点动”或者“单步运动”,而不是“自动运动”。点动”强调的是手动操作。点动有两种操作方式 连续点动:当用户按下按键是,对应的轴就会以设定好的速度连续转动,一旦松开按键,轴就会立即停止。 增量点动:当用户按下点动按键时,轴就会以设定好的速度转动某个固定的角度(或距离),到达这个角度后,轴就会停止转动,而不管用户是否一直按着按键。当用户...
2018-05-17 10:25:27 3785
原创 减速机
减速机一般用于低转速大扭矩的传动设备,把电动机高速运转的动力通过减速机来达到减速的目的(输入轴上的齿数小的齿轮啮(nie)合输出轴上大齿轮来达到减速目的),大小齿轮的齿数之比就是减速比。减速比(也称“传动比”或“速比”)计算 减速比 = 电机输出转数 / 减速机输出转数减速机的扭矩 减速机扭矩 = 9550 * 电机功率 / 电机功率输出转数 * 减速比 * 减速机使用...
2018-05-17 09:02:09 395
原创 编码器
绝对式编码器 绝对式编码器由机械位置决定的每个位置的唯一性,它无需记忆、无需找参考点,而且不用一直计数,什么时候需要知道位置,什么时候就去读取它的位置。 由于绝对编码器在定位方面明显地优于增量式编码器,已经越来越广泛地应用于各种工业系统中的角度、长度测量和定位控制。单圈绝对式编码器 旋转单圈绝对式编码器,以转动中测量光码盘各道刻线,以获取唯一的编码,当转动...
2018-05-16 13:45:31 1263
原创 ROS kinetic SLAM功能包的使用方法
gmapping 功能包基于激光雷达Rao-Blackwellized 粒子滤波算法二维栅格地图需要机器人提供里程计信息OpenSlam开源算法输出地图话题:nav_msgs/OccupancyGridkinetic@vm:~$ rosmsg show nav_msgs/OccupancyGrid std_msgs/Header header uint32 seq time stamp st...
2018-05-14 11:22:26 5660 2
原创 ROS kinetic SLAM机器人导航需要用到数据信息
硬件要求1. 差分轮式机器人,可使用Twist速度指令控制 linear : XYZ方向上的线速度,单位是m/s; angular : XYZ方向上的角速度,单位是rad/s;2. 机器人必须安装激光雷达等测距设备,可以获取环境深度信息。kinetic@vm:~$ rosmsg show geometry_msgs/Twistgeometry_msgs/Vector3 linear float6...
2018-05-14 10:48:46 1355
原创 ROS kinetic 机器语音
语音识别模型常用功能包pocketsphinx - 集成CMU Sphinx 和 Festival 开源项目中的代码,实现语音识别的功能。audio-common - 提供了文本转语音(Text-to-speech, TTS)的功能实现,完成机器人说话的想法。AIML(Artificial Intelligence Markup Language) - 人工智能...
2018-05-11 17:58:38 1350 2
原创 ROS kinetic 机器视觉
ROS 中的图像数据二维图像 显示图像类型kinetic@vm:~$ roslaunch usb_cam usb_cam-test.launchkinetic@vm:~$ rostopic list/image_view/output/image_view/parameter_descriptions/image_view/parameter_updates/rosout/rosout_agg/u...
2018-05-11 17:04:06 3863
原创 ROS kinetic gazebo物理仿真
Gazebo 模型库 下载地址 https://bitbucket.org/osrf/gazebo_models/downloads/ 保存到 ~/.gazebo/models配置物理仿真模型 为link添加惯性参数(inertial)和碰撞属性(collision) 为link添加gazebo标签,如颜色 为joint添加传动装置(transmission),如电机...
2018-05-09 11:00:30 2072
原创 ROS kinetic 《ROS by Example》
参考 《ROS by Example》导航仿真示例kinetic@vm:~$ roslaunch rbx1_bringup fake_turtlebot.launchkinetic@vm:~$ roslaunch rbx1_nav fake_amcl.launch map:=test_map.yamlkinetic@vm:~$ rosrun rviz rviz -d `rospack find r...
2018-05-09 09:56:49 6009 4
原创 ROS kinetic ArbotiX
链接 : https://wiki.ros.org/arbotix代码 : git clone https://github.com/vanadiumlabs/arbotix_ros.git板卡 下载并编译kinetic@vm:~/catkin_ws/src$ git clone https://github.com/vanadiumlabs/arbotix_ros.gitkinetic...
2018-05-08 09:58:20 1224 1
原创 STM32F103 PWM
PWM (Pulse Width Modulation) 脉冲宽度调制是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。是一种对模拟信号电平进行数字编码的方法。通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。电压或电流是以一种通或断的重复脉冲序列被加到模拟负载上去的。STM32除了TIM6 和 TIM7,其他定时器都可以用来产生PWM输出。TIM1...
2018-05-07 23:57:12 16547 1
原创 STM32F103 定时器
STM32中一共有11个定时器,其中2个高级控制定时器,4个通用定时器和2个基本定时器,以及2个看门狗定时器和1个系统滴答定时器。滴答定时器是SysTick。2个高级控制定时器(TIM1 和 TIM8):16位向上、向下、向上/下自动装载计数器16位可编程(可以实时修改)预分频器,计数器时钟频率的分频系数为1~65535之间的任意数值多达4个独立通道: ─ 输入捕获 ─ 输出比较 ─ PWM...
2018-05-07 22:48:14 924
原创 VS C++ 从终端获取数据
#include <conio.h>int _getch( void ); //从终端获取一个字符,不回显int _getche( void ); //从终端获取一个字符,回显int _putch( int c ); //写一个字符到终端<ctype.h>int isprint( int c ); //如果c是一个可打印的字符,返回true例程 从键盘输入整形获取#i...
2018-05-07 16:33:07 1193
原创 VS C++ sscanf 用法
#include <stdio.h>int main(int argc, char **argv){ char tokenstring[] = "15 12 14..."; char s[81]; char c; int i; float fp; /* Input various data from tokenstring: */ sscanf( tok...
2018-05-07 16:03:39 882
原创 STM32F103 中断
中断 CPU 执行程序时,由于发生了某种随机的事件(外部或内部),引起CPU暂时中断正在运行的程序,转去执行一段特殊的服务程序(中断服务子程序或中断处理程序),来处理该事件,该事件处理完成后又返回被中断的程序继续执行。STM32支持84个中断(16个内部,68个外部);16级可编程的中断优先级设置。抢占优先级:高抢占式优先级的中断事件会打断当前的主程序/中断程序的运行。中断嵌套。响应...
2018-05-06 16:10:04 10569
原创 STM32F103 定时器
定时器的时钟源可以是内部时钟,或者外部时钟。STCLK的具体来源则由芯片设计者决定,不同产品之间的时钟频率可能会不相同。这里使用外部时钟源。Cortex-M3的内核中包含一个SysTick时钟。SysTick为一个24位递减计数器,SYsTick设定初值并使能后,每经过1个系统时钟周期,计数值就减1,计数到0时,SysTick计数器自动重装初值并继续计数,同时内部的 COUNTFLAG 标志会置位...
2018-05-06 10:22:51 790
原创 STM32F103 GPIO寄存器配置
每个GPI/O端口有两个32位配置寄存器(GPIOx_CRL,GPIOx_CRH)两个32位数据寄存器(GPIOx_IDR和GPIOx_ODR)一个32位置位/复位寄存器(GPIOx_BSRR)一个16位复位寄存器(GPIOx_BRR)一个32位锁定寄存器(GPIOx_LCKR)函数介绍void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GP...
2018-05-05 23:18:23 12627
原创 ROS kinetic xacro模型文件
xacro 是优化后的URDF模型 精简模型代码:创建宏定义、文件包含 提供可编程接口:常量、变量、数学计算、条件语句常量定义 <xacro:property name="M_PI" value="3.14159" /> 常量名 M_PI 值为3.14159常量使用 <origin xyz="0 0 0" rpy="${M_P...
2018-05-03 22:43:26 1529 1
原创 Qt pro工程文件详解
testqmake.proSOURCES += main.cpp # 指定源码CONFIG += console # 指定控制台main.cpp#include <iostream>using namespace std;int main(int argc, char **argv){ cout << "test qmake" << endl...
2018-05-03 11:20:31 1421
原创 qmake 编译
qmake首先编译pro文件生成makefileLinux:make 编译Windows : jom 编译生成界面源码 uic.exe widget.ui -o ui_widget.h生成信号槽代码 moc.exe widget.h moc_widget.cpp编译步骤 预处理 - 头文件加载和宏生成cpp 编译 - cpp到.o或....
2018-05-03 11:12:16 2222
原创 MATLAB R2014a安装方法
破解:将 install.jar 复制到 \Matlab R2014a\java\jar 下覆盖将 libmwservices.dll 复制到 \Matlab R2014a\bin\win64 下将 license.lic 复制到 D:\Program Files\MATLAB\R2014a 下
2018-05-02 21:44:05 1060
原创 Lua C API
Lua语言是如何与Lua C语言通信的? lua利用虚拟栈与C进行数据交换。在栈中的每个元素都表示一个值(nil, string, number etc) 利用栈进行数据交换,数据采用先进后出原则。 Lua 的每个元素有两种序号进行编号。 Lua如何操作堆栈的往栈里压值void lua_pushboolean (lua_State *L, i...
2018-05-02 17:54:56 235
原创 windows10 SDK下载链接
下载链接https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk
2018-05-02 11:14:18 12404
原创 VS2013 下载地址
VS2013 下载链接http://download.microsoft.com/download/8/1/F/81FE1D40-2658-4CC5-8699-85D8377B35B9/vs2013.4_ult_chs.iso
2018-05-02 11:07:00 2321
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人