精华内容
下载资源
问答
  • 机器人编程软件

    2014-03-15 18:36:19
    视图型机器人编程软件 直观 简易 自动编译为c语言
  • 小R科技XRScratch图形化机器人编程软件,可以用于wuli bot等机器人的图形化编程,自动生成C代码。
  • KUKA机器人编程软件

    2018-08-31 15:41:04
    KUKA机器人编程工具,可帮助开发人员在笔记本上编辑、开发、调试机器人的程序
  • 安川机器人编程软件MPE720含注册码

    热门讨论 2015-07-31 08:03:25
    安川机器人编程软件MPE720含注册码,有需要的用户可以下载,希望大家都可以把有用的东西共享出来
  • NACHI不二越机器人编程软件手册

    热门讨论 2016-04-09 17:45:24
    详细介绍了那智不二越机器人编程指令和应用方法。
  • RobotWare-OS 为基础机器人编程和运行提供了所有必要的功能。类似于我们使用的电脑的Windows系统。 RobotWare选件 是在RobotWare-OS上运行的选项。它们是为需要动作控制、通信、系统工程或应用等附加功能,类似于...

    最近有不少小伙伴后台留言提了一些有关于RobotStudio安装方面的问题,包括初次安装,升级,或者多版本共存之类的问题,我有选择性的进行了回复,因为有的问题确实有些太“基础”。不过这也是体现出了还是有一些小伙伴对于RobotStudio的安装问题还是不太了解,所以这次我们就一起来看一下RobotStudio安装你应该get到的几个点。这样以后再有人提相关问题就可以直接把本文分享给他了。
    在这里插入图片描述
    首先我们先来看一下什么是RobotStudio,什么是RobotWare,它们有什么区别。毕竟我们想要了解,首先得先认识它。

    什么是RobotStudio

    RobotStudio 是一款运行在Windows系统中应用程序,用于机器人单元的建模、离线创建和仿真。RobotStudio 允许我们使用离线控制器,即可以直接在电脑上运行的虚拟 IRC5 控制器,也就是虚拟控制器 (Virtual Controller)。RobotStudio 还可以让我们与真实的IRC5 控制器连接,方便我们在线对机器人进行配置与调试。

    在这里插入图片描述
    在早期的RobotStudio中,离线功能(或者说本地功能)与在线功能是分开的,在5.11的版本以前,RobotStudio的在线功能被称为RobotStudioOnline(简称R.S.O.),从5.11开始,R.S.O.就被作为最重要的功能之一嵌入到RobotStudio中。然后又经历了一个又一个版本的更迭,才有了如今我们使用的6.0版本甚至是现在新出的2019版本。

    什么是RobotWare

    RobotWare是ABBRobotics的系列软件产品,我们可以简单的把它理解为是一个ABB机器人所使用操作系统。RobotWare包含了不同的产品类型。

    在这里插入图片描述
    RobotWare-OS是机器人的操作系统。RobotWare-OS 为基础机器人编程和运行提供了所有必要的功能。类似于我们使用的电脑的Windows系统。

    RobotWare选件 是在RobotWare-OS上运行的选项。它们是为需要动作控制、通信、系统工程或应用等附加功能,类似于我们电脑上的应用软件。这个不是机器人使用的必要功能,所以这些选项通常需要单独购买。

    生产应用选件 是点焊、弧焊和特定生产应用的扩展包。它们主要是为了提升生产成果和简化应用的安装与编程而设计的。这个有点应用软件的意思但是高于应用软件,如果还是用电脑来类比,可以理解为系统的增强型补丁。

    RobotWare Add-ins 可用来扩展机器人系统的功能,我们可以通过它来自己开发机器人选项。

    总结一下,如果拿电脑来做类比,RobotStudio就是电脑的硬件,RobotWare就是电脑的操作系统以及操作系统中所安装的应用软件。单独的RobotWare是无法在电脑上独立运行的,灵魂必须要依附于一个“身体”才能实现“人”的功能,当然这个身体就是RobotStudio。

    电脑可以装双系统甚至是多系统,RobotStudio也可以吗?别急,这就是我们接下来要探讨的关于RobotStudio升级与多版本共存的问题。
    在这里插入图片描述
    我们目前一般使用的机器人系统都是5.0版本、6.0版本和最近新出的7.0版本。7.0版本的系统由于是新出的,使用量可能还不是很多,目前我们最常用的版本还是5.0版与6.0版的。在5.0的版本中,RobotStudio与RobotWare是分开安装的(或者说是需要手动安装),而在6.0的版本中当安装某个版本的RobotStudio的时候会自动的给安装相应版本的RobotWare,而现在的7.0版本,RobotStudio与RobotWare又分开了,我们在安装了2019版本的RobotStudio之后还需要手动安装RobotWare,当然,果你电脑中原先就有RobotWare,那么再装了2019版本的RobotStudio之后是可以直接通过2019版本RobotStudio来使用之前的RobotWare的。而且在安装新版本的RobotStudio时旧版本的可以不卸载,RobotStudio是支持多版本共存的。但要注意一点,RobotStudio的版本不能低于我们要使用的RobotWare版本。比如说6.07的RobotStudio是可以使用5.0~6.07版本的RobotWare的,6.08及以后的RobotWare版本就不行。要想使用更高版本的RobotWare就必须升级RobotStudio,使RobotStudio的版本不低于RobotWare版本。

    那么通过上面的一大段我们就可以回答关于RobotStudio多版本共存的问题了。RobotStudio可以多版本共存吗,答案是可以,但是不推荐。建议只安装最新版的或者日常使用中能用到的最高版本,其它的版本只单独安装RobotWare就可以了。
    在这里插入图片描述
    下面我们就接着来看一下如何单独的给电脑添加RobotWare

    5.0版本添加方法:

    首先肯定是要下载相应的安装包
    在这里插入图片描述
    5.0版本的安装包通常用两种封装方式,一种是只包含RobotWare不包含RobotStudio,如上图的①,另一种是2者同时包含。建议已经装有6.0或者2019版本RobotStudio的小伙伴只下载①这种格式的就可以了,因为我们目前的RobotStudio版本已经高于要使用的5.0的RobotWare版本了,对于新装的小伙伴建议下载②格式的,因为没有RobotStudio的支持RobotWare是无法使用的。

    对于①来说,安装的时候没有RobotStudio的选项,默认路径一路下一步安装就可以了。

    在这里插入图片描述
    对于②来说,安装时会有RobotStudio与RobotWare的选项,安装时应先选择安装RobotStudio,安装完成后再次运行安装程序,再选择安装RobotWare,然后根据提示一律下一步。不建议更改安装路径,改错了会出问题,特别是新手。当然老鸟除外。

    在这里插入图片描述
    安装完成后就可以在6.0版本或者更新版本的RobotStudio使用5.0的RobotWare了。

    在这里插入图片描述
    6.0及更新版本的添加的方法
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    分享到这里,还有一件事值得一提。新出的RobotStudio2019由于升级了授权验证机制,不能延长试用期,这让很多小伙伴们郁闷了好久。不过这里有个好消息分享给大家,ABB官方目前宣布免费提供RobotStudio2019的一年全功能试用期,有效期可以到2020.12.31.虽然不能免费永久使用,但是想尝鲜的小伙伴还是可以下载下来好好体验一把。毕竟此次升级有很多令人眼前一亮的改变。
    在这里插入图片描述
    在这里插入图片描述
    免费申请详情可以点击下方的链接,链接里有获取步骤与软件安装包的下载。

    点击我免费获取一年RobotStudio2019全功能使用权

    这里也提供了官网的下载地址,可以复制后使用迅雷或第三方下载工具下载,速度比网盘要快一些。

    RobotStudio6.08.01下载地址

    https://robotstudiocdn.azureedge.net/install/RobotStudio_6.08.01.zip

    RobotStudio2019.5.3下载地址

    https://robotstudiocdn.azureedge.net/install/RobotStudio_2019.5.3.zip

    文章中提到的其它安装包可以通过扫描文末二维码关注公众号在“下载中心”菜单进行下载。方法参见下动图。
    在这里插入图片描述

    这次的分享就到这里了,如果本文对你有帮助或者启发,那就动动你可爱的小手点下在看或者转发到朋友圈吧,让它帮助启发更多的人。
    在这里插入图片描述

    展开全文
  • 机器人编程软件注册算法分析

    千次阅读 2006-02-22 15:27:00
    本软件是一个机器人编程软件,VC6的程序,软件保护方式是每台机子有一个机器码,然后根据这个机器码得到一个序列号。入口:messageboxa00423FC8 |. 50 push eax ; /Arg200423FC9 |. 8B4D FC mo

    本软件是一个机器人编程软件,VC6的程序,软件保护方式是每台机子有一个机器码,然后根据这个机器

    码得到一个序列号。
    入口:messageboxa
    00423FC8  |.  50            push eax                                                     ;

    /Arg2
    00423FC9  |.  8B4D FC       mov ecx,dword ptr ss:[ebp-4]                                 ; |
    00423FCC  |.  83C1 68       add ecx,68                                                   ; |
    00423FCF  |.  51            push ecx                                                     ;

    |Arg1
    00423FD0  |.  E8 DBE5FDFF   call software.004025B0                                          

    ; /software.004025B0
    00423FD5  |.  25 FF000000   and eax,0FF
    00423FDA  |.  85C0          test eax,eax
    00423FDC  |.  74 1E         je short software.00423FFC  <------爆破改这里改掉

    密码写在注册表里
    cur/software/roboto/
    password=284248195480218

    004015AF  |.  8985 F0FEFFFF mov dword ptr ss:[ebp-110],eax                               ; |
    004015B5  |.  8D4D A8       lea ecx,dword ptr ss:[ebp-58]                                ; |
    004015B8  |.  51            push ecx  <-----参数"kMPB3LAX5JTGE1M"
                                                     KMPB3LAX5JTGE1M                            

                          ; |Arg1
    004015B9  |.  E8 84FCFFFF   call software.00401242                                          

    ; /这个call里出现了注册码,这个call就是计算注册码的地方,跟踪进去得到注册机算法
    004015BE  |.  83C4 08       add esp,8

    跟踪进去这个关键的call:
    00401242  /$  55            push ebp
    00401243  |.  8BEC          mov ebp,esp
    00401245  |.  6A FF         push -1
    00401247  |.  68 895A4300   push software.00435A89                              ;  SE

    handler installation
    0040124C  |.  64:A1 0000000>mov eax,dword ptr fs:[0]
    00401252  |.  50            push eax
    00401253  |.  64:8925 00000>mov dword ptr fs:[0],esp
    0040125A  |.  83EC 24       sub esp,24
    0040125D  |.  C745 D0 00000>mov dword ptr ss:[ebp-30],0
    00401264  |.  C745 FC 01000>mov dword ptr ss:[ebp-4],1
    0040126B  |.  8D4D E0       lea ecx,dword ptr ss:[ebp-20]
    0040126E  |.  E8 113A0300   call <jmp.&MFC42.#540>
    00401273  |.  C645 FC 02    mov byte ptr ss:[ebp-4],2
    00401277  |.  8D4D 0C       lea ecx,dword ptr ss:[ebp+C]
    0040127A  |.  E8 C1120000   call software.00402540
    0040127F  |.  8945 D8       mov dword ptr ss:[ebp-28],eax                   ;  机器码长度
    00401282  |.  C745 D4 07000>mov dword ptr ss:[ebp-2C],7
    00401289  |.  C745 F0 05000>mov dword ptr ss:[ebp-10],5
    00401290  |.  C745 EC 03000>mov dword ptr ss:[ebp-14],3
    00401297  |.  C745 E8 02000>mov dword ptr ss:[ebp-18],2
    0040129E  |.  C745 E4 01000>mov dword ptr ss:[ebp-1C],1
    004012A5  |.  C745 DC 00000>mov dword ptr ss:[ebp-24],0
    004012AC  |.  EB 09         jmp short software.004012B7
    004012AE  |>  8B45 DC       /mov eax,dword ptr ss:[ebp-24]
    004012B1  |.  83C0 01       |add eax,1
    004012B4  |.  8945 DC       |mov dword ptr ss:[ebp-24],eax
    004012B7  |>  8B4D DC        mov ecx,dword ptr ss:[ebp-24]
    004012BA  |.  3B4D D8       |cmp ecx,dword ptr ss:[ebp-28]                  ;  比较长度
    004012BD  |.  0F8D 5F010000 |jge software.00401422
    004012C3  |.  8B45 DC       |mov eax,dword ptr ss:[ebp-24]
    004012C6  |.  99            |cdq
    004012C7  |.  B9 07000000   |mov ecx,7     //判断是否是7的倍数
    004012CC  |.  F7F9          |idiv ecx
    004012CE  |.  85D2          |test edx,edx
    004012D0  |.  75 1C         |jnz short software.004012EE                        ; 
    004012D2  |.  8B55 DC       |mov edx,dword ptr ss:[ebp-24]
    004012D5  |.  52            |push edx                                       ; /Arg1
    004012D6  |.  8D4D 0C       |lea ecx,dword ptr ss:[ebp+C]                   ; |
    004012D9  |.  E8 B2120000   |call <software.GetSysCodeBin>                      ; /得到每一

    位,放在al里
    004012DE  |.  0FBEC0        |movsx eax,al                                   ;  eax除了al外高

    位清零
    004012E1  |.  8B4D E4       |mov ecx,dword ptr ss:[ebp-1C]
    004012E4  |.  03C8          |add ecx,eax
    004012E6  |.  894D E4       |mov dword ptr ss:[ebp-1C],ecx                  ;  ebp_1c := k +

    ebp_1c;
    004012E9  |.  E9 94000000   |jmp software.00401382
    004012EE  |>  8B45 DC       |mov eax,dword ptr ss:[ebp-24]
    004012F1  |.  99            |cdq
    004012F2  |.  B9 05000000   |mov ecx,5  <-----------------------判断是5的倍数
    004012F7  |.  F7F9          |idiv ecx
    004012F9  |.  85D2          |test edx,edx
    004012FB  |.  75 19         |jnz short software.00401316
    004012FD  |.  8B55 DC       |mov edx,dword ptr ss:[ebp-24]
    00401300  |.  52            |push edx                                       ; /Arg1
    00401301  |.  8D4D 0C       |lea ecx,dword ptr ss:[ebp+C]                   ; |
    00401304  |.  E8 87120000   |call <software.GetSysCodeBin>                      ;

    /software.00402590
    00401309  |.  0FBEC0        |movsx eax,al
    0040130C  |.  8B4D E8       |mov ecx,dword ptr ss:[ebp-18]
    0040130F  |.  03C8          |add ecx,eax
    00401311  |.  894D E8       |mov dword ptr ss:[ebp-18],ecx
    00401314  |.  EB 6C         |jmp short software.00401382
    00401316  |>  8B45 DC       |mov eax,dword ptr ss:[ebp-24]
    00401319  |.  99            |cdq
    0040131A  |.  B9 03000000   |mov ecx,3<---------------------------判断是否是3的倍数
    0040131F  |.  F7F9          |idiv ecx
    00401321  |.  85D2          |test edx,edx
    00401323  |.  75 19         |jnz short software.0040133E
    00401325  |.  8B55 DC       |mov edx,dword ptr ss:[ebp-24]
    00401328  |.  52            |push edx                                       ; /Arg1
    00401329  |.  8D4D 0C       |lea ecx,dword ptr ss:[ebp+C]                   ; |
    0040132C  |.  E8 5F120000   |call <software.GetSysCodeBin>                      ;

    /software.00402590
    00401331  |.  0FBEC0        |movsx eax,al
    00401334  |.  8B4D EC       |mov ecx,dword ptr ss:[ebp-14]
    00401337  |.  03C8          |add ecx,eax
    00401339  |.  894D EC       |mov dword ptr ss:[ebp-14],ecx
    0040133C  |.  EB 44         |jmp short software.00401382
    0040133E  |>  8B55 DC       |mov edx,dword ptr ss:[ebp-24]
    00401341  |.  81E2 01000080 |and edx,80000001 《---------------判断是否大于等于0
    00401347  |.  79 05         |jns short software.0040134E
    00401349  |.  4A            |dec edx
    0040134A  |.  83CA FE       |or edx,FFFFFFFE
    0040134D  |.  42            |inc edx
    0040134E  |>  85D2          |test edx,edx
    00401350  |.  75 19         |jnz short software.0040136B
    00401352  |.  8B45 DC       |mov eax,dword ptr ss:[ebp-24]
    00401355  |.  50            |push eax                                       ; /Arg1
    00401356  |.  8D4D 0C       |lea ecx,dword ptr ss:[ebp+C]                   ; |
    00401359  |.  E8 32120000   |call <software.GetSysCodeBin>                      ;

    /software.00402590
    0040135E  |.  0FBEC8        |movsx ecx,al
    00401361  |.  8B55 F0       |mov edx,dword ptr ss:[ebp-10]
    00401364  |.  03D1          |add edx,ecx
    00401366  |.  8955 F0       |mov dword ptr ss:[ebp-10],edx
    00401369  |.  EB 17         |jmp short software.00401382
    0040136B  |>  8B45 DC       |mov eax,dword ptr ss:[ebp-24]
    0040136E  |.  50            |push eax                                       ; /Arg1
    0040136F  |.  8D4D 0C       |lea ecx,dword ptr ss:[ebp+C]                   ; |
    00401372  |.  E8 19120000   |call <software.GetSysCodeBin>                      ;

    /software.00402590
    00401377  |.  0FBEC8        |movsx ecx,al
    0040137A  |.  8B55 D4       |mov edx,dword ptr ss:[ebp-2C]
    0040137D  |.  03D1          |add edx,ecx
    0040137F  |.  8955 D4       |mov dword ptr ss:[ebp-2C],edx
    00401382  |>  8B45 DC       |mov eax,dword ptr ss:[ebp-24]
    00401385  |.  50            |push eax                                       ; /Arg1
    00401386  |.  8D4D 0C       |lea ecx,dword ptr ss:[ebp+C]                   ; |
    00401389  |.  E8 02120000   |call <software.GetSysCodeBin>                      ;

    /software.00402590
    0040138E  |.  0FBEC8        |movsx ecx,al
    00401391  |.  83E1 01       |and ecx,1
    00401394  |.  85C9          |test ecx,ecx
    00401396  |.  74 09         |je short software.004013A1
    00401398  |.  8B55 E4       |mov edx,dword ptr ss:[ebp-1C]
    0040139B  |.  83C2 01       |add edx,1
    0040139E  |.  8955 E4       |mov dword ptr ss:[ebp-1C],edx
    004013A1  |>  8B45 DC       |mov eax,dword ptr ss:[ebp-24]
    004013A4  |.  50            |push eax                                       ; /Arg1
    004013A5  |.  8D4D 0C       |lea ecx,dword ptr ss:[ebp+C]                   ; |
    004013A8  |.  E8 E3110000   |call <software.GetSysCodeBin>                      ;

    /software.00402590
    004013AD  |.  0FBEC8        |movsx ecx,al
    004013B0  |.  83E1 02       |and ecx,2
    004013B3  |.  85C9          |test ecx,ecx
    004013B5  |.  74 09         |je short software.004013C0
    004013B7  |.  8B55 E8       |mov edx,dword ptr ss:[ebp-18]
    004013BA  |.  83C2 01       |add edx,1
    004013BD  |.  8955 E8       |mov dword ptr ss:[ebp-18],edx
    004013C0  |>  8B45 DC       |mov eax,dword ptr ss:[ebp-24]
    004013C3  |.  50            |push eax                                       ; /Arg1
    004013C4  |.  8D4D 0C       |lea ecx,dword ptr ss:[ebp+C]                   ; |
    004013C7  |.  E8 C4110000   |call <software.GetSysCodeBin>                      ;

    /software.00402590
    004013CC  |.  0FBEC8        |movsx ecx,al
    004013CF  |.  83E1 04       |and ecx,4
    004013D2  |.  85C9          |test ecx,ecx
    004013D4  |.  74 09         |je short software.004013DF
    004013D6  |.  8B55 EC       |mov edx,dword ptr ss:[ebp-14]
    004013D9  |.  83C2 01       |add edx,1
    004013DC  |.  8955 EC       |mov dword ptr ss:[ebp-14],edx
    004013DF  |>  8B45 DC       |mov eax,dword ptr ss:[ebp-24]
    004013E2  |.  50            |push eax                                       ; /Arg1
    004013E3  |.  8D4D 0C       |lea ecx,dword ptr ss:[ebp+C]                   ; |
    004013E6  |.  E8 A5110000   |call <software.GetSysCodeBin>                      ;

    /software.00402590
    004013EB  |.  0FBEC8        |movsx ecx,al
    004013EE  |.  83E1 08       |and ecx,8
    004013F1  |.  85C9          |test ecx,ecx
    004013F3  |.  74 09         |je short software.004013FE
    004013F5  |.  8B55 F0       |mov edx,dword ptr ss:[ebp-10]
    004013F8  |.  83C2 01       |add edx,1
    004013FB  |.  8955 F0       |mov dword ptr ss:[ebp-10],edx
    004013FE  |>  8B45 DC       |mov eax,dword ptr ss:[ebp-24]
    00401401  |.  50            |push eax                                       ; /Arg1
    00401402  |.  8D4D 0C       |lea ecx,dword ptr ss:[ebp+C]                   ; |
    00401405  |.  E8 86110000   |call <software.GetSysCodeBin>                      ;

    /software.00402590
    0040140A  |.  0FBEC8        |movsx ecx,al
    0040140D  |.  83E1 10       |and ecx,10
    00401410  |.  85C9          |test ecx,ecx
    00401412  |.  74 09         |je short software.0040141D
    00401414  |.  8B55 D4       |mov edx,dword ptr ss:[ebp-2C]
    00401417  |.  83C2 01       |add edx,1
    0040141A  |.  8955 D4       |mov dword ptr ss:[ebp-2C],edx
    0040141D  |>^ E9 8CFEFFFF   /jmp software.004012AE  《---------------大循环
    00401422  |>  8B45 D4       mov eax,dword ptr ss:[ebp-2C]
    00401425  |.  0C 5A         or al,5A
    00401427  |.  50            push eax
    00401428  |.  8B4D E4       mov ecx,dword ptr ss:[ebp-1C]
    0040142B  |.  81F1 FA000000 xor ecx,0FA
    00401431  |.  51            push ecx
    00401432  |.  8B55 F0       mov edx,dword ptr ss:[ebp-10]
    00401435  |.  52            push edx
    00401436  |.  8B45 E8       mov eax,dword ptr ss:[ebp-18]
    00401439  |.  83F0 5F       xor eax,5F
    0040143C  |.  50            push eax
    0040143D  |.  8B4D EC       mov ecx,dword ptr ss:[ebp-14]
    00401440  |.  51            push ecx
    00401441  |.  68 D0304400   push software.004430D0                              ;  ASCII "%

    d%d%d%d%d"
    00401446  |.  8D55 E0       lea edx,dword ptr ss:[ebp-20]
    00401449  |.  52            push edx
    0040144A  |.  E8 2F380300   call <jmp.&MFC42.#2818>
    0040144F  |.  83C4 1C       add esp,1C
    00401452  |.  8D45 E0       lea eax,dword ptr ss:[ebp-20]
    00401455  |.  50            push eax
    00401456  |.  8B4D 08       mov ecx,dword ptr ss:[ebp+8]                    ;  得到了序列号

     

    做注册机

    procedure TfrmMain.btnGenClick(Sender: TObject);
    var
      ebp_2c: integer;
      ebp_24: integer;
      ebp_1c: integer;
      ebp_18: integer;
      ebp_14: integer;
      ebp_10: integer;
      BinCode: byte;    //系统码每一位
      SysCode: string;//系统码
      SerialNo: string; //注册码
      len: integer; //系统码长度
      i: integer;

      eax,ecx,edx: integer;
    begin
      ebp_2c := 7;
      ebp_24 := 0;
      ebp_1c := 1;
      ebp_18 := 2;
      ebp_14 := 3;
      ebp_10 := 5;
      SysCode := trim(edtSysCode.Text);
      len := length(SysCode);
      for i := 0 to len - 1 do
      begin
        ebp_24 := i;
        binCode := Ord(sysCode[ebp_24+1]);
        if ebp_24 mod 7=0 then
            ebp_1c := binCode+ebp_1c
        else if ebp_24 mod 5 = 0 then
            ebp_18 := binCode + ebp_18
        else if ebp_24 mod 3 = 0 then
             ebp_14 := binCode + ebp_14
        else begin
         if ebp_24 and $80000001=0 then
            ebp_10 := bincode+ ebp_10
         else ebp_2c := binCode + ebp_2c;
        end;
             //binCode := Ord(sysCode[ebp_24+1]);
             //ebp_1c := binCode + ebp_1c;
          ecx := binCode;
          if ecx and 1<>0 then
               inc(ebp_1c);
          ecx := binCode and 2;
          if ecx <> 0 then
              inc(ebp_18);

          ecx := binCode and 4;
          if ecx<>0 then
              inc(ebp_14);

          ecx := binCode and 8;
          if ecx<>0 then
              inc(ebp_10);

          ecx := binCode and $10;
          if ecx<>0 then
              inc(ebp_2c);
        end;
        ecx := ebp_14;        //11C  284
        serialNo := IntToStr(ecx);
        eax := ebp_18 xor $5f;  //F8   248
        SerialNo := SerialNo + IntToStr(eax);
        edx := ebp_10;        //C3   195
        SerialNo := SerialNo + IntToStr(edx);
        ecx := ebp_1c xor $0fa; //1E0  480
        SerialNo := SerialNo + IntToStr(ecx);
        eax := ebp_2c or $5a;  //DA  218
        SerialNo := SerialNo + IntToStr(eax);
        edtSerialNo.Text := SerialNo;
    end;


     284248195480218

    展开全文
  • 现在社会,机器人编程是一门博大精深、有着多学科融合性的...假设我们已经搭建好了一个挖土机,需要让它从A点挖土,然后行驶到B点倒土,在纯软件编程里,我们只要一行代码就可以搞定,但在机器人编程中却没有这么简单。

    现在社会,机器人编程是一门博大精深、有着多学科融合性的课程,针对少儿方面,林林总总的相关编程培训也是层出不穷,格物斯坦来分析下这两者的区别所在。

    纯软件是个虚拟的世界,简单而完美,就像我们上学时所说的理想条件下。而真实世界太复杂了,并且总有意外,因此就需要更健壮的软件去化解这些复杂,处理这些意外。

    在这里插入图片描述

    举个例子,就以孩子们非常喜欢的挖土机来说明下硬件编程有多复杂。假设我们已经搭建好了一个挖土机,需要让它从A点挖土,然后行驶到B点倒土,在纯软件编程里,我们只要一行代码就可以搞定,但在机器人编程中却没有这么简单。

    第一,因为从A→B,地面情况不同,摩擦力不均以及电机微小的偏角误差,编程中让它走直线的这个命令,在实际中会产生偏差,而且走的越远,偏差越大。因此,孩子们在出现这种情况后,需要及时通过陀螺仪校准调整。

    在这里插入图片描述

    第二,程序中A→B之间的距离我们假设设置的是1米,可挖土机实际上并不会真的走1米,肯定会有误差。机器人停下后要检测轮子实际行进的距离,多退少补再做微调。

    第三,电池的电量也会影响电机的准确度,进而影响行进的距离,速度以及偏角。要想每次运行的结果完全一样,要么保证运行时的电量不能差别太大,要么根据电量的多少对行为进行补偿。

    第四,机器人会偶尔出现死机,读数不准等硬件错误。比如我们发现EV3的陀螺仪有时候会突然出错,在静止状态下读数也会改变,必须重启机器人才能恢复。控制器本身可能会死机,也必须重启才能恢复。

    在这里插入图片描述

    做软件测试,一次通过次次通过。而机器人,前5次都成功了,第6次还是需要祈祷才行。复杂的世界,需要复杂的程序让他去实现简单的事。我想这也是机器人编程教给孩子很重要的一点。

    机器人编程,对于有些编程经验的理科生来说,起初都需要花费一定的时间和精力摸索,何况一个孩子,所以孩子学习机器人编程,我建议一定要有大人的正确引导,这样才能带着孩子一起用工程师的视角去看看这个世界。

    综上所述,少儿机器人编程和软件编程差别还是很大的,虽然有异曲同工的特征,但理论前沿性和实际操作性,少儿机器人编程更具有灵活多变、益智有趣。

    展开全文
  • 《ROS机器人编程》第一章 机器人软件平台,主要介绍了机器人开发的现状和机器人平台的基本组件,重点介绍了目前较为活跃的机器人软件平台,其中机器人操作系统ROS (Robot Operating System) 使用最为广泛。

    前言:
    今天是2020年9月1日,Slender博客正式启用!从新的学年开始从头记录每一阶段的学习进程,有时间的话也会把以往的学习内容整理放上来。

    今天开始从头学习《ROS机器人编程》(哦,我的老天,这书的中文版有496页),会按照章节依次进行学习内容记录,以便于复习巩固。

    《ROS机器人编程》第1章 机器人软件平台,主要介绍了机器人开发的现状和机器人平台的基本组件,重点介绍了目前较为活跃的机器人软件平台,其中机器人操作系统ROS (Robot Operating System) 使用最为广泛。

    1.1 平台的组件

    • 硬件、操作系统、应用程序和用户等四个要素在IT行业中通常被称为平台的生态系统(Ecosystem)的四个要素。
    • 操作系统(Windows、Linux、Android、iOS等)的引入导致了硬件和软件接口的集成,从而实现了硬件模块化。
    • 生态系统的4大组成要素和PC 、 PP 、 PR的历史的共同点
      生态系统的4大组成要素和PC 、 PP 、 PR的历史的共同点

    1.2 机器人软件平台

    • 平台:软件平台和硬件平台。
    • 机器人软件平台:不仅包括机器人应用中使用的硬件抽象、子设备控制,以及机器人工程中常用的传感、识别、实时自定位和绘图(SLAM)、导航(Navigation)和机械臂控制(Manipulation)等功能的实现,还包含功能包管理、开发环境所需的库、多种开发/调试工具。
    • 机器人硬件平台:不仅包括移动机器人、无人机和人形硬件研究平台,还包括正在商业化的诸如SoftBank的Pepper和MIT Media Lab的Jibo等产品。
    • 具有代表性的、用于机器人开发的软件平台中有:
      1. 机器人操作系统ROS (Robot Operating System)
      2. 日本的开放式机器人技术中间件(OpenRTM)
      3. 欧洲的实时控制为中心的OROCOS
      4. 韩国的OPRoS

    1.3 机器人软件平台的必要性

    “为什么要使用机器人软件平台?”

    ROS不需要完全重新开发已有的系统和程序,而是通过加入一些标准化的代码就能对已有的非ROS程序进行ROS化的转化。

    它的五种基本特点:

    1. 程序的可重用性
      实现功能程序的开发、下载和共享
    2. 基于通信的程序
      将各处理器的用途组件化或节点化,由划分为最小执行单元的节点之间发送和接收数据,平台具有关于该数据通信的所有一般信息
    3. 提供开发工具
      ROS提供调试相关的工具 — 2维绘图和3维视觉化工具RViz
    4. 活跃的开发者社区
    5. 生态系统的形成
      ROS现在已经开始构建生态系统。在这个正在形成的生态系统里,机器人硬件领域的开发者、ROS开发运营团队、应用软件开发者以及用户也能像机器人公司和传感器公司一样从中受益。

    1.4 机器人软件平台将带来的未来

    目前比较活跃的机器人软件平台和相应的群体有:

    • MSRDS: Microsoft Robotics Developer Studio,美国 Microsoft
    • ERSP: Evolution Robotics Software Platform,欧洲 Evolution Robotics
    • ROS: Robot Operating System,美国 Open Robotics 12
    • OpenRTM: 日本工业技术综合研究所(AIST)
    • OROCOS: 欧洲
    • OPRoS: 韩国 ETRI, KIST, KITECH,江原大学
    • NAOqi OS: 日本软银和法国阿尔德巴兰(Aldebaran)
      除此之外,Player、YARP、MARIE、URBI、CARMEN、Orca、MOOS等也属于
      这个范畴。
      多种机器人软件平台
    展开全文
  • 机器人离线编程软件

    2016-05-30 00:42:12
    主要介绍工业机器人离线编程软件的现状及其发展趋势
  • front_krobosoft 带有Ros2的机器人编程接口软件的前端
  • 国内的机器人编程开发软件,内容接近robotstudio,开发教程很好找
  • 机器人离线编程软件RoboDK 手册.pdf.zip,机器人离线编程手册
  • Workspace工业机器人离线编程软件介绍
  • 诺宝机器人编程

    2013-03-05 21:11:31
    诺宝机器人编程器。很不错的软件,学习机器人编程的人可以使用!共分为五个压缩包。
  • lego机器人编程入门

    2013-03-15 13:33:41
    对lego机器人的编程了解入门, 基于LabVIEW中学版软件的LEGO机器人编程入门.pdf
  • 机器人编程为使机器人完成某种任务而设置的动作顺序描述。示教是机器人编程的一种重要方式,通过预先设置好机器人要达到的位置,以指令描述出来。本手册旨在帮助读者学习和掌握汇川的机器人示教软件InoTeachPad的...
  • KUKA机器人编程 1-3,适用KUKA系统软件8.2、8.3 。KUKA机器人KRC4控制器的入门级的操作,编程手册,非常适合机器人初学者!内容既有操作机器人的方法,又有编程的介绍。对于初学者可以很好的了解KUKA机器人系统的...
  • KUKA 机器人系统的结构和功能 机器人运动 机器人的投入运行 执行机器人程序 程序文件的使用 建立及更改编程的运动 利用机器人程序中的逻辑功能 变量的使用 使用工艺程序包 在 KRL 中成功编程 使用上级控制系统作业
  • KUKA机器人编程手册1(KUKA系统软件8)中文.pdf
  • 由于机器人在各个领域的日益广泛的应用,以及由于机器人软件的复杂性(例如与环境的持续交互,自主和自适应)的... 本文旨在分析设计机器人编程语言的技术要求,提出机器人编程语言的路线图,并讨论其趋势和潜在挑战
  • FANUC,KUKA,ROBOTMAN三种机器人相应离线编程软件介绍
  • RobotArt机器人离线编程软件

    千次阅读 2016-07-25 22:53:20
    RobotArt国产机器人离线编程平台,通过在学徒网的注册,很快拿到了用户名和密码,马上体验了一下,话不多说,上图! 1.软件界面 2.实验设计 3. 三维球
  • 诺宝机器人编程器.zip

    2013-03-05 21:39:15
    诺宝机器人编程器。很不错的软件,学习机器人编程的人可以使用!共分为五个压缩包。
  • 基于VC6.0的初步机器人离线编程软件,可以实现空间示教点的增加、删除、移动,可以显示机器人模型,可以实现点的放大、缩小。
  • 工业机器人的串联机构与数控车床的并联机构本身的特性不同,决定了业内人士一般不会用机器人来做“精确、可靠的加工”。+/- 0.100mm以上的公差使搬运、码垛、装配、焊接等...美中不足的是,机器人本身自带的编程软件...
  • kuka机器人编程简介

    千次阅读 2019-11-18 13:42:06
    KUKA的机器人编程语言简称 KRL,是一种类似C语言(请百度什么是C语言)的文本型语言,由.SRC 和 .DAT 组成。 .SRC储存程序逻辑、指令、动作之类 .DAT储存位置变量以及轨迹点位的参数。 每个程序都由这两个文件组成...
  • 诺宝机器人编程器.z02

    2013-03-05 21:15:26
    诺宝机器人编程器。很不错的软件,学习机器人编程的人可以使用!共分为五个压缩包。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,198
精华内容 479
关键字:

机器人编程软件