RobotStudio软件入门(1)
- 格式:pptx
- 大小:2.31 MB
- 文档页数:36
搬运码垛工作站建模1、创建机器人系统2、创建动态输送链3、创建动态夹具4、工作站逻辑连接5、添加 IO(设置好需重启)6、示教目标点(同步到 RAPID)7、RAPID编程、创建机器人系统1、创建空工作站2、导入IRB 260机器人模型3、从布局创建机器人系统,勾选 Chinese和709-1网络、创建动态输送链1、添加输送链并修改位置-<X>■*=-丿 =If e»wT Q ;b2L*a f^fsandWr任詩 5TJP1匚聲jj wf-i監lAM 帼1融M菲E9^ 烷■tl ・i |■厂 iRJlHP JuMJhri PRTBFh\^i ir*fite.,展』||\-」|||』(1咀1_补口B <I 「;工虫』.1)了曲|2、创建600*400*200的物料并修改位置3、添加一个smart组件屯日哼…乙? ”刁沫保存工作站]-ABB RobotStudio 6—4、添加source 组件@11: 5u 託电£marffil4P ^rentP Q si ti cn Ijnip)O.QQ1▲ D 00 區11亍0 00J K I TIQr i 曲 at i m Gee)C0.00T□. DOJL,| |y0 00 |T|_/ Tr insi ent田舐陌島城口茫已岂窿范复制对爲誉厅乐记・朗止冈存背屛龙发生. EKtCUte旋用5、设置物料本地原点建植控劃器gRAPID Add-Ins修改g 细'4蟲G 导入几呵燼>至都件 &桓架〒Smarty 伴Q 标记・孕虱*・宅]掏呻辿界 费表匡” £1表面边界 曰燥-闿从註盛边界GD --工卞壬宜 O 感去幌控亡m 戎U >苗合 客尿竣生成直践 它一建CAD*届性5C_箱送疽|____________ X 应胃关闭|筋|建模閩 牙味保存工作站1*声物料-2彳理1 SQ 義送睚X 励sc_输送链 I 融组________________________ 子对龜组井盪tn 细件编错父74芟Source物料属性璽SG_输送链组咸|属性与连结[信号和连捱丽 子对象鉅件麻恤纟冃件 g處呈Siurcft创建一个图盼组件的拷瓜已證垦二q 可it可见设走內竺设罟本地愛敷勒料应用 黄闭6、添力口 LINEMOVE 和 QUEU 组件返[未保存工作站1*fflft-4 sc.ffiisSiLin* ^rMov^r 丿二Qn 已"虫 S*ur 寸物H护物料_2Ctrl*X 复刮Ctrl-匚ct 「i 亠s墓考__| sc_«^S x L厢sc_输送链组成 禹性与逹结I 信号和连播I 设计7设置LINEMOVE 属性届性:Lin earM ever▼ X属性Object 日W 输送 ▼Direct ion Gnm) -i.ao ' o.oo " □.«): F(m/i)200Rtf&rsuciGlobal ♦信号BExecute1应用1灵闪]&添加面传感器组件Ori gin 亦 loao.oo**1 T 1-220. 00T73. 00~v1信号关闭9、设置输送链不能被传感器检测属■性:P Ilan eSensc rJE 性三]Axi si Q MH ) 450.000. 00 Axi E 2 ^nm)i0.00:0. 00E 色 iiHwdP art0. 00应用Ctrl-XCtfl-C帖芒 Ctrl+V已理几何愫检杳-^- W®^*ucs*&盘oX Srh ^-4 MSJ>叛丑>k惨顶M她雜SD 几词体应、外睚坏10、设置SC_输送链的属性连接11、设置信号连接12、添加信号处理组件,用于检测传感器下降沿届性! LogicGate[NOT|属性Op eratorBUTDelay (fi)□. 0信号关闭J |观匡丄| £C輕踊X [I尿sc_输送链组成国性与连结倍号亚按设计却毀组件SmartiS.^1 Source'创遂一个图形组件的拷贝Line aHM over移动一个対象剽一条结上”血Q ULEU电表示拘耐象的PA5'J*可作拘组进行撫纵Lo进缠Op布届連嘆I嚴I 匹味保存工怖占]*机械蕉詈jj Plu^«Stni:orJ事监测对象与平面相交Locic<?ate [HOT] 进帶悼信号的卷揖运箕13、传感器下降沿触发source进行copy I TL 输Ou14、传感器与SC 输送链的输出联系I士hHrfl 「n 心协产开孑耳十宙苗启涓垢 IfiBiSftriCW Swet驾 HUT E4tZ»«[*kL4Q>lEii4iL«av TlaieStJiscr 5eii5(rDLl 訓真IEli和 IIL-UELog. cGitf [HTT] Etatpicil Lofi [WT1Iipul KLoig : eGite [NTT]Qvlpijl?niriztJCMZICl O'-L (SCJflfett三扪匚“上・皿”"1_!"| 堀皆 总用 I/-」wTi i • )]||r15、添加仿真开始结束组件,用于激活传感器SC 更世楚X I sc 输送键召寻尊uFf cH ti' _i: - -i:-Ji 0 t ■C.Tnjut尙sc_输送链属性与14结|值号和谨接丨设计子对余组件3] Soiirce■创建一亍圉形组件的拷囚- LizLearFlcverV移动一介耐象到一杀线上Queue恚示脚对蔬的乩列,可作汁组遴讦操孤I J Fl uieS £tisorH事苗测对象与平面相交■I—、_ Lo^i[WT]A磁器勘宇信号的逻辑运算|/— SinulatiimEveiits,厶J一仿車畔冶和偉[:时片出『1瞬冲信2rrr16、添加置位复位组件,对仿真开始结束信号进行保持裁sc_输送琏组我匡性5连结荷号和连掩设计子对證殂件■ _ Linavrklayar叱移动-亍对象到—杀线上Q卫曽口聲表示为时象的认列,可作为组进行操纵[j, PlaneSens ore■监圳対象与平面相交-TA Ldgi eGate [HOT] 丄占逬荐敎宇信當的邊辑运算I/- R S irfiul ali oziE^eiits仿亘幵始和恒止时芨尤的脉冲信号洱1 cSHLfiteh昴设备谊傥锁定rrrSr^KW ihCl T^IniDfi dffil*ffl'Ifi蔚曲冃扁?fitL・GB^&t・ [ET]jull Ji L M□虫•■MTJ IificrUL■牛i・[IDT]JhjLjral S-7EE-Z3.Bx-t=i.t<il«M^4M4T泊他啦Xjmi tlllJlt ■附ShAalF'd arf! tnl ■,£dnl.*U«Ed I HT-I-I J Lhpa2>Li.C.-di dik、l-T«il>h"lBl<rMM刘沁吐l. T • tjj-fct B IWI.L呵崩・那廿TX ■il^474hl4*'Ii t|**別拯fc*§目网B3#?d»^rirc«EJMlt4pJ a>」*4EJVJ4K-F'l hTr«J4«j|M EiMirDldL tAjaoa-g.wM乩“町gi.U|i^<4 iRrTl T屮■■Lqf ■£|RT|.IH警初^4"电B EfietUI-*01」Fl U>fi::fMI知冋盯g实用祗気・ijli - FrZTan' i£iH・ i ,rE、■* *:■( T L?|L喧IL#.品5k*Hll*i;l aru: Ef^Jrl LAfL^SlLbLCh LaC-kkLl£JC^l^-l.t=SL llir^uaEjm fiEUn[iLnjli^j iflMU SdlFCE Exeort.«L"山啊吐鼻i 11 ■:■皿环MJ磴•hlTM「•:■»>< ■:卜:,•" J£f£.迂•:・:血"r^TT * i ti- 1 H^ 卜坯18、进行仿真设定选择SC ------- 输送链进行验证三、创建动态夹具1、先制作一个吸盘模型,然后设置成工具,并安装到机器人法拉盘2、添加SMAR组件3、添力口 ATTACHE和 DETACHE组件组薦属性与连结I信号和连接丽Atte.cher 安装-V 对象 D«t«.?L»r*拆瞧一个已安装的对象B单SniSSWf 何对象与两点之间的线段相交6、线传感器设置属性5、添加一个线传感器组件 子対隶组甘阖10组性LineSensorLineSen&or | G XJitt ~~aSt art (mm)[no^|^■o ao:1356.00Ji.亍1End Grwn)1505.00j ao^1256.00Ji. M 1R^diu瓦(rm)4. 00SeJisadFartiRiieo_n(j_2aa_oi/Ba£^ ■Seits&iFoiiLt (jnm)0.00 Q ao 14.00"信号日应用关闭7、设置吸盘工具不能被传感器检测8、把线传感器安装到吸盘(不更新位置,保持当前位置)丿廟囂二具曲勺吐t acker 商De lackerLiiLeSens丿七itsiCtrl-X口「1-匚Hrl-V 绘存为氧X. rr™可见送运为皿9、设置属性连接卜k届性body 1Body 11RB46O_11&_24G_Q1H”揃•鋅xipan电史K 1;11«利酒$世L'tT.DlTrt :t!D 庖活 H 许U 崛tfr WlT10、添加信号及连接励SC:_工具B J±生京t-.+(x> 肯E.:-•一'n =・k<! - =;F 门•命=三皿UK_________________:-ttlOO *™r.ectim 扌嚴Q 世型L'O "■inr.tirtE^s ND;11、添加信号处理取非和锁定组件子曲漿组件滋协细件Etflichftr:拆柠-亍已安装的对象LinaS aits or检测是否有任何对象与两点之i蒯绒段相交H f \ LogiuG札怙D1OT]占丿进行数宇信号的逻辑运算12、继续信号连接•Attaeher安装一个对象归L _! 凯,m SC_XA 坐WltlTF冃•eT* 愿刁三列旨佶己<Bi H[;13、添加一个示教物料14、应用手动线性验证 SC工具信号:]VarvOEoL 的一期1 tK 穹:左誠” M沾】”J富 I U Ko_] ]□申q*甘吨■iWtt Ad 用Iflff£❻血JE 具 II副让凸KT四、工作站逻辑连接忙;H弄y : f iP^fc ^dd-tvk H -■=壬書*j 7 G前mgweiwistB rH 皿曲•]>l3t«S X忑sc P alletp J •=呻辰北忌二片51-XW 3=- ■- =Ga.-亍 =二"teliEAS “盘切」1 ■口:医壬严口 S ■耳 精 H1T4t 3 ■神□HIM! ITdr ;j«5 出■鼻幣氏"**4sMx XT Jh jr/“片 AC Pad^BT JlllkSC "'Jir___________五、参考代码MODULE MainMoudlePERS tooldatatGrip:=[TRUE,[[0,0,200],[1,0,0,0]],[25,[0,0.00109327,116.889],[1,0,0,0],0,0 ,0]];!吸盘工具数据PERS loaddata LoadEmpty:=[0.01,[0,0,1],[1,0,0,0],0,0,0];PERS loaddata LoadFull:=[40,[0,0,50],[1,0,0,0],0,0,0];!有效载荷数据PERS robtarget pHome:=[[1620.00,-0.00,1331.59],[1.27986E-06,-0.707107,- 0.707107,1.27986E-06],[0,0,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];!基准点PERS robtarget pActualPos:=[[1620,-1.87531E-14,1331.59],[1.27986E-06,- 0.707107,-0.707107,1.27986E-06],[0,0,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];!实际点PERS robtargetpPick1:=[[1488.007792464,376.826660408,476.964684195],[0,0.707106307,0.7071 07256,0],[0,0,1,0],[9E9,9E9,9E9,9E9,9E9,9E9]];!1 路拾取目标点PERS robtarget pPlace1:=[[-292.446,1263.27,55.4492],[0,0.707107,0.707106,0],[1,0,2,0],[9E+09,9E+09,9E+ 09,9E+09,9E+09,9E+09]];!1 路放置基准点PERS robtarget pBase1_0:=[[-292.446294945,1263.272085268,55.449220723],[0,0.707107387,0.707106176,0],[1 ,0,2,0],[9E9,9E9,9E9,9E9,9E9,9E9]];!1 路放置 0 度姿态PERS robtarget pBase1_90:=[[-391.976797324,1362.469634994,55.449159414],[0,1,-0.000030621,0],[1,0,3,0],[9E9,9E9,9E9,9E9,9E9,9E9]];!1 路放置 90度姿态PERS robtarget pPick2:=[[1488.013130905,-358.406014736,476.965039287],[0,0.707106307,0.707107256,0],[-1,0,0,0],[9E9,9E9,9E9,9E9,9E9,9E9]];PERS robtarget pPlace2:=[[-317.378,-1857.99,55.449],[0,0.707108,0.707106,0],[-2,0,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];PERS robtarget pBase2_0:=[[-317.378137718,-1857.993871961,55.448967354],[0,0.707107745,0.707105817,0],[-2,0,-1,0],[9E9,9E9,9E9,9E9,9E9,9E9]];PERS robtarget pBase2_90:=[[-407.525988074,-1755.902485322,55.449282402],[0,1,-0.000031217,0],[-2,0,0,0],[9E9,9E9,9E9,9E9,9E9,9E9]];PERS speeddata MinSpeed:=[1000,300,5000,1000];PERS speeddata MidSpeed:=[2500,400,5000,1000];PERS speeddata MaxSpeed:=[4000,500,5000,1000];!搬运速度定义PERS bool bPalletFull1:=FALSE;PERS bool bPalletFull2:=FALSE;!逻辑布尔量,拾取后为 UE放置后为FALSEPERS num nCount1:=1;PERS num nCount2:=1;!输送链计数PROC Main()rInitAll;WHILE TRUE DOIF diBoxInPos1=1 AND diPalletInPos1=1 AND bPalletFull1=FALSE THEN rPick1;rPlace1;ENDIFIF diBoxInPos2=1 AND diPalletInPos2=1 AND bPalletFull2=FALSE THEN rPick2;rPlace2;ENDIFWaitTime 0.1;ENDWHILEENDPROCPROC rInitAll()Reset doGrip;pActualPos:=CRobT(\tool:=tGrip);pActualPos.trans.z:=pHome.trans.z;MoveL pActualPos,MinSpeed,fine,tGrip\WObj:=wobj0;MoveJ pHome,MidSpeed,fine,tGrip\WObj:=wobj0;bPalletFull1:=FALSE;nCount1:=1;bPalletFull2:=FALSE;nCount2:=1;ENDPROCPROC rPick1()MoveJ Offs(pPick1,0,0,400),MaxSpeed,z50,tGrip\WObj:=wobj0;MoveL pPick1,MinSpeed,fine,tGrip\WObj:=wobj0;Set doGrip;WaitTime 0.3;GripLoad LoadFull;MoveL Offs(pPick1,0,0,400),MinSpeed,z50,tGrip\WObj:=wobj0; ENDPROCPROC rPick2()MoveJ Offs(pPick2,0,0,400),MaxSpeed,z50,tGrip\WObj:=wobj0;MoveL pPick2,MinSpeed,fine,tGrip\WObj:=wobj0;Set doGrip;WaitTime 0.3;GripLoad LoadFull;MoveL Offs(pPick2,0,0,400),MinSpeed,z50,tGrip\WObj:=wobj0; ENDPROCPROC rPlace1()rPosition1;MoveJ Offs(pPlace1,0,0,400),MidSpeed,z50,tGrip\WObj:=wobj0;MoveL pPlace1,MinSpeed,fine,tGrip\WObj:=wobj0;Reset doGrip;WaitTime 0.3;GripLoad LoadEmpty;MoveL Offs(pPlace1,0,0,400),MidSpeed,z50,tGrip\WObj:=wobj0;MoveJ Offs(pPick1,0,0,400),MaxSpeed,z50,tGrip\WObj:=wobj0;nCount1:=nCount1+1;IF nCount1>20 THENbPalletFull1:=TRUE;ENDIFENDPROCPROC rPlace2()rPosition2;MoveJ Offs(pPlace2,0,0,400),MaxSpeed,z50,tGrip\WObj:=wobj0;MoveL pPlace2,MinSpeed,fine,tGrip\WObj:=wobj0;Reset doGrip;WaitTime 0.3;GripLoad LoadEmpty;MoveL Offs(pPlace2,0,0,400),MidSpeed,z50,tGrip\WObj:=wobj0;MoveJ Offs(pPick2,0,0,400),MaxSpeed,z50,tGrip\WObj:=wobj0;nCount2:=nCount2+1;IF nCount2>20 THENbPalletFull2:=TRUE;ENDIFENDPROCPROC rPosition1()TEST nCount1CASE 1: pPlace1:=Offs(pBase1_0,0,0,0);CASE 2: pPlace1:=Offs(pBase1_0,600+10,0,0);CASE 3: pPlace1:=Offs(pBase1_90,0,400+10,0);CASE 4: pPlace1:=Offs(pBase1_90,400+10,400+10,0);CASE 5: pPlace1:=Offs(pBase1_90,800+20,400+10,0);CASE 6: pPlace1:=Offs(pBase1_0,0,600+10,200);CASE 7: pPlace1:=Offs(pBase1_0,600+10,600+10,200);CASE 8: pPlace1:=Offs(pBase1_90,0,0,200);CASE 9: pPlace1:=Offs(pBase1_90,400+10,0,200);CASE 10: pPlace1:=Offs(pBase1_90,800+20,0,200);CASE 11: pPlace1:=Offs(pBase1_0,0,0,400);CASE 12: pPlace1:=Offs(pBase1_0,600+10,0,400);CASE 13: pPlace1:=Offs(pBase1_90,0,400+10,400);CASE 14: pPlace1:=Offs(pBase1_90,400+10,400+10,400);CASE 15: pPlace1:=Offs(pBase1_90,800+20,400+10,400);CASE 16:pPlace1:=Offs(pBase1_0,0,600+10,600);CASE 17:pPlace1:=Offs(pBase1_0,600+10,600+10,600);CASE 18:pPlace1:=Offs(pBase1_90,0,0,600);CASE 19:pPlace1:=Offs(pBase1_90,400+10,0,600);CASE 20:pPlace1:=Offs(pBase1_90,800+20,0,600);DEFAULT:TPErase;TPWrite "the Counter of line 1 is error,please check it!";Stop;ENDTESTENDPROCPROC rPosition2()TEST nCount2CASE 1:pPlace2:=Offs(pBase2_0,0,0,0);CASE 2:pPlace2:=Offs(pBase2_0,600+10,0,0);CASE 3:pPlace2:=Offs(pBase2_90,0,400+10,0);CASE 4:pPlace2:=Offs(pBase2_90,400+10,400+10,0);CASE 5:pPlace2:=Offs(pBase2_90,800+20,400+10,0);CASE 6:pPlace2:=Offs(pBase2_0,0,600+10,200);CASE 7:pPlace2:=Offs(pBase2_0,600+10,600+10,200);CASE 8:pPlace2:=Offs(pBase2_90,0,0,200);CASE 9:pPlace2:=Offs(pBase2_90,400+10,0,200);CASE 10:pPlace2:=Offs(pBase2_90,800+20,0,200);CASE 11:pPlace2:=Offs(pBase2_0,0,0,400);CASE 12:pPlace2:=Offs(pBase2_0,600+10,0,400);CASE 13:pPlace2:=Offs(pBase2_90,0,400+10,400);CASE 14:pPlace2:=Offs(pBase2_90,400+10,400+10,400);CASE 15:pPlace2:=Offs(pBase2_90,800+20,400+10,400);CASE 16:pPlace2:=Offs(pBase2_0,0,600+10,600);CASE 17:pPlace2:=Offs(pBase2_0,600+10,600+10,600);CASE 18:pPlace2:=Offs(pBase2_90,0,0,600);CASE 19:pPlace2:=Offs(pBase2_90,400+10,0,600);CASE 20:pPlace2:=Offs(pBase2_90,800+20,0,600);DEFAULT:TPErase;TPWrite "the Counter of line 1 is error,please check it!";Stop;ENDTESTENDPROCPROC rModify()MoveJ pHome,MinSpeed,fine,tGrip\WObj:=wobj0;MoveJ pPick1,MinSpeed,fine,tGrip\WObj:=wobj0;MoveJ pBase1_0,MinSpeed,fine,tGrip\WObj:=wobj0;MoveJ pBase1_90,MinSpeed,fine,tGrip\WObj:=wobj0;MoveJ pPick2,MinSpeed,fine,tGrip\WObj:=wobj0;MoveJ pBase2_0,MinSpeed,fine,tGrip\WObj:=wobj0;MoveJ pBase2_90,MinSpeed,fine,tGrip\WObj:=wobj0;ENDPROCENDMODULE欢迎您的下载,资料仅供参考!致力为企业和个人提供合同协议,策划案计划书,学习资料等打造全网一站式需求。
认识安装工业机器人仿真软件内容简介—•了解机器人仿真应用技术二安装软件三•软件授权管理四•软件界面介绍网-了解机器人仿真软彳牛应用技术使用仿貞软件目的:缩短时间I 降低风险I 提高质量Robotstudio 可以实现功能:自动路径生 成自动分析伸 展能力碰撞检测翩仿真应用功能包 二次开发CAD 导入在线作业-了解机器人仿真软彳牛应用技术______________________ __________________________ )■ •安装软件软件获取:下载软件 随机光盘软件安装:Additional Options8in M , RobotStudioRobotWa re 双击打开A Tools* I Utilrty // dutoruri//0 Launch一 Lau n c h.ext .mani fest•安装软件选择语言Launch ReadMe•安装软件软件安装:单击“安装产品”■ •安装软件----------- 软件安装:计算机配呂:硬件要求CPU15内存2GB及以上硬盘空闲20GB以上显卡独寸昴卡操作系统Windows7或以上•安装软件•软件授权管理mu MP ■開*¥基本版高级版* MMfi*.・WKLTg FiWhrtLffJuJi查看授权有效日期•软件界面介绍文件选项功能卡SAFIH ■僂更棹刊逮一晋rutfip 軽曲g 住…杆 AI4HI31申打开它■Power and prcKluictivrty 忙ir 旧 better wortd)1•软件授权管理活授权的操作:输入许可证号X*d Int.1MAMVsi砂D>隼QIE^-*<4KVW ♦MS 雷it朴■■<MVKAK RQbQt»udi4 74101meWiltrmnwr21到列出了可用Ermtfl卽适T 工僭出,斗(苛■ 土師珂第忆8TMEJ 昨工作讷 钢人斤駅附工啊卜 右 二■二二二二白 郎・t£^EABB•软件界面介绍基本选项功能卡建模选项功能卡•软件界面介绍仿真选项功能卡控制器选项功能卡XAJiL ・工mx«*»;!M ^1 士*W Rdt»»$iu (|ip 5^1 fll ■二L■豪・■■*O "pa • eszJktt Rsbo^ELdis SAtjOl■Fa 苗•: .04屯畫■无E"fin N・n ■.&* &M 出區 oS*ft•软件界面介绍RAPID 选项功能卡•软件界面介绍!1 4nOlAii«l ■通IjwNAHD• WrUI-■fiAAdd-1比选项功能卡恢复默认界面操作软 件 异时 处 理 办精品资料构建基本仿真工业机器人工作站(一)内容简介一•布局工业机器人基本工作站二.建立工业机器人系统与手动操作*布局工业机器人基本工彳乍站1. 了解工业机器人工作站:•布局工业机器人基本工彳乍站基本的工业机第人工作 站包含工业机器人及工 作我们就通过图 中厠子进行工业机as 人 工作站布局的学习2.导入机器人:■ h ---------------------------布局工业机器人基本工作站乙在“MyTocT 上按住左 犍■向上托到"IRB2600. 12 16$_01" 话松开左冠「 一-布局工业机器人基本工彳乍站4、摆放周辺模块:迥ip* MS S*r^ 隐兰 毗f5*huHiZmM rm wn1.正审基本"功 能选项卡申*打 开“导入模空 庫”-“设备”. 选择r 日盹“、加载机器人工具:耳人皿・ 叽・人亦 €___吊塚禺住吃怎仃■1-T - X;[*¥••「皿】・血・輩宵J? B/t**!*wtf* £[>■■»■ 如』宾上m仪MU glM 丰FuMinfi Ot^h-呦1Mi 甲DMl ・CMM TMiflm.圈屮白线[乂域内为机器人可到达范闱©工作对報 应调整到机器人最佳工作范围,这样才可以提高节 拍相方便轴迹规划。
Abb robotstudio安装教程
1、各个版本的robot安装方式是一样的。
2、解压安装包
3、
4、选择语言为中文
5、
6、选择安装产品
7、
8、首先安装
robotware
9、点击下一步
10、点击下一步
11、在选择安装路径时只需要把C改为D就可以了。
12、安装robot完毕后安装robotstudio回到初始界面
13、
14、安装robotstudio
15、点击下一步
16、下一步
17、将路径的C改为D,方法如上
18、64位windows系统会出现两个图标,
19、可以同时使用
20、32位系统只有一个图标,还是正常使用。
21、打开软件点击选项
22、点击授权
23、查看软件使用到期时间。
24、关闭软件,破解开始。
25、在开始下输入regedit回车
26、进入注册表编辑器
27、
28、在这里32位系统和64位系统注册表文件路径有所不
同,现在以64位系统为例
29、
30、
31、
32、
33、双击打开后进入编辑
34、
35、破解完毕打开robot
36、选项---》授权- 查看已安装许可证
37、时间变为2029年破解成功.
38、注意:32位系统没有此步骤直接跳到下
一步。
搬运码垛工作站建模1、创建机器人系统2、创建动态输送链3、创建动态夹具4、工作站逻辑连接5、添加IO(设置好需重启)6、示教目标点(同步到RAPID)7、RAPID编程一、创建机器人系统1、创建空工作站2、导入IRB 260机器人模型3、从布局创建机器人系统,勾选Chinese和709-1网络二、创建动态输送链1、添加输送链并修改位置2、创建600*400*200的物料并修改位置3、添加一个smart组件4、添加source组件5、设置物料本地原点6、添加LINEMOVER和QUEUE组件7设置LINEMOVER属性8、添加面传感器组件9、设置输送链不能被传感器检测10、设置SC_输送链的属性连接11、设置信号连接12、添加信号处理组件,用于检测传感器下降沿13、传感器下降沿触发source进行copy14、传感器与SC输送链的输出联系15、添加仿真开始结束组件,用于激活传感器16、添加置位复位组件,对仿真开始结束信号进行保持17、18、进行仿真设定选择SC——输送链进行验证三、创建动态夹具1、先制作一个吸盘模型,然后设置成工具,并安装到机器人法拉盘2、添加SMART组件3、添加ATTACHER和DETACHER组件4、设置属性5、添加一个线传感器组件6、线传感器设置属性7、设置吸盘工具不能被传感器检测8、把线传感器安装到吸盘(不更新位置,保持当前位置)9、设置属性连接10、添加信号及连接11、添加信号处理取非和锁定组件12、继续信号连接13、添加一个示教物料14、应用手动线性验证SC_工具四、工作站逻辑连接五、参考代码MODULE MainMoudlePERS tooldatatGrip:=[TRUE,[[0,0,200],[1,0,0,0]],[25,[0,0.00109327,116.889],[1,0,0,0],0,0,0]];!吸盘工具数据PERS loaddata LoadEmpty:=[0.01,[0,0,1],[1,0,0,0],0,0,0];PERS loaddata LoadFull:=[40,[0,0,50],[1,0,0,0],0,0,0];!有效载荷数据PERS robtarget pHome:=[[1620.00,-0.00,1331.59],[1.27986E-06,-0.707107,-0.707107,1.27986E-06],[0,0,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];!基准点PERS robtarget pActualPos:=[[1620,-1.87531E-14,1331.59],[1.27986E-06,-0.707107,-0.707107,1.27986E-06],[0,0,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];!实际点PERS robtargetpPick1:=[[1488.007792464,376.826660408,476.964684195],[0,0.707106307,0.7071 07256,0],[0,0,1,0],[9E9,9E9,9E9,9E9,9E9,9E9]];!1路拾取目标点PERS robtarget pPlace1:=[[-292.446,1263.27,55.4492],[0,0.707107,0.707106,0],[1,0,2,0],[9E+09,9E+09,9E+09, 9E+09,9E+09,9E+09]];!1路放置基准点PERS robtarget pBase1_0:=[[-292.446294945,1263.272085268,55.449220723],[0,0.707107387,0.707106176,0],[1, 0,2,0],[9E9,9E9,9E9,9E9,9E9,9E9]];!1路放置0度姿态PERS robtarget pBase1_90:=[[-391.976797324,1362.469634994,55.449159414],[0,1,-0.000030621,0],[1,0,3,0],[9E9,9E9,9E9,9E9,9E9,9E9]];!1路放置90度姿态PERS robtarget pPick2:=[[1488.013130905,-358.406014736,476.965039287],[0,0.707106307,0.707107256,0],[-1,0,0,0],[9E9,9E9,9E9,9E9,9E9,9E9]];PERS robtarget pPlace2:=[[-317.378,-1857.99,55.449],[0,0.707108,0.707106,0],[-2,0,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];PERS robtarget pBase2_0:=[[-317.378137718,-1857.993871961,55.448967354],[0,0.707107745,0.707105817,0],[-2,0,-1,0],[9E9,9E9,9E9,9E9,9E9,9E9]];PERS robtarget pBase2_90:=[[-407.525988074,-1755.902485322,55.449282402],[0,1,-0.000031217,0],[-2,0,0,0],[9E9,9E9,9E9,9E9,9E9,9E9]];PERS speeddata MinSpeed:=[1000,300,5000,1000];PERS speeddata MidSpeed:=[2500,400,5000,1000];PERS speeddata MaxSpeed:=[4000,500,5000,1000];!搬运速度定义PERS bool bPalletFull1:=FALSE;PERS bool bPalletFull2:=FALSE;!逻辑布尔量,拾取后为UE,放置后为FALSEPERS num nCount1:=1;PERS num nCount2:=1;!输送链计数PROC Main()rInitAll;WHILE TRUE DOIF diBoxInPos1=1 AND diPalletInPos1=1 AND bPalletFull1=FALSE THEN rPick1;rPlace1;ENDIFIF diBoxInPos2=1 AND diPalletInPos2=1 AND bPalletFull2=FALSE THEN rPick2;rPlace2;ENDIFWaitTime 0.1;ENDWHILEENDPROCPROC rInitAll()Reset doGrip;pActualPos:=CRobT(\tool:=tGrip);pActualPos.trans.z:=pHome.trans.z;MoveL pActualPos,MinSpeed,fine,tGrip\WObj:=wobj0;MoveJ pHome,MidSpeed,fine,tGrip\WObj:=wobj0;bPalletFull1:=FALSE;nCount1:=1;bPalletFull2:=FALSE;nCount2:=1;ENDPROCPROC rPick1()MoveJ Offs(pPick1,0,0,400),MaxSpeed,z50,tGrip\WObj:=wobj0;MoveL pPick1,MinSpeed,fine,tGrip\WObj:=wobj0;Set doGrip;WaitTime 0.3;GripLoad LoadFull;MoveL Offs(pPick1,0,0,400),MinSpeed,z50,tGrip\WObj:=wobj0; ENDPROCPROC rPick2()MoveJ Offs(pPick2,0,0,400),MaxSpeed,z50,tGrip\WObj:=wobj0; MoveL pPick2,MinSpeed,fine,tGrip\WObj:=wobj0;Set doGrip;WaitTime 0.3;GripLoad LoadFull;MoveL Offs(pPick2,0,0,400),MinSpeed,z50,tGrip\WObj:=wobj0; ENDPROCPROC rPlace1()rPosition1;MoveJ Offs(pPlace1,0,0,400),MidSpeed,z50,tGrip\WObj:=wobj0; MoveL pPlace1,MinSpeed,fine,tGrip\WObj:=wobj0;Reset doGrip;WaitTime 0.3;GripLoad LoadEmpty;MoveL Offs(pPlace1,0,0,400),MidSpeed,z50,tGrip\WObj:=wobj0; MoveJ Offs(pPick1,0,0,400),MaxSpeed,z50,tGrip\WObj:=wobj0; nCount1:=nCount1+1;IF nCount1>20 THENbPalletFull1:=TRUE;ENDIFENDPROCPROC rPlace2()rPosition2;MoveJ Offs(pPlace2,0,0,400),MaxSpeed,z50,tGrip\WObj:=wobj0; MoveL pPlace2,MinSpeed,fine,tGrip\WObj:=wobj0;Reset doGrip;WaitTime 0.3;GripLoad LoadEmpty;MoveL Offs(pPlace2,0,0,400),MidSpeed,z50,tGrip\WObj:=wobj0; MoveJ Offs(pPick2,0,0,400),MaxSpeed,z50,tGrip\WObj:=wobj0; nCount2:=nCount2+1;IF nCount2>20 THENbPalletFull2:=TRUE;ENDIFENDPROCPROC rPosition1()TEST nCount1CASE 1:pPlace1:=Offs(pBase1_0,0,0,0);CASE 2:pPlace1:=Offs(pBase1_0,600+10,0,0);CASE 3:pPlace1:=Offs(pBase1_90,0,400+10,0);CASE 4:pPlace1:=Offs(pBase1_90,400+10,400+10,0);CASE 5:pPlace1:=Offs(pBase1_90,800+20,400+10,0);CASE 6:pPlace1:=Offs(pBase1_0,0,600+10,200);CASE 7:pPlace1:=Offs(pBase1_0,600+10,600+10,200);CASE 8:pPlace1:=Offs(pBase1_90,0,0,200);CASE 9:pPlace1:=Offs(pBase1_90,400+10,0,200);CASE 10:pPlace1:=Offs(pBase1_90,800+20,0,200);CASE 11:pPlace1:=Offs(pBase1_0,0,0,400);CASE 12:pPlace1:=Offs(pBase1_0,600+10,0,400);CASE 13:pPlace1:=Offs(pBase1_90,0,400+10,400);CASE 14:pPlace1:=Offs(pBase1_90,400+10,400+10,400);CASE 15:pPlace1:=Offs(pBase1_90,800+20,400+10,400);CASE 16:pPlace1:=Offs(pBase1_0,0,600+10,600);CASE 17:pPlace1:=Offs(pBase1_0,600+10,600+10,600);CASE 18:pPlace1:=Offs(pBase1_90,0,0,600);CASE 19:pPlace1:=Offs(pBase1_90,400+10,0,600);CASE 20:pPlace1:=Offs(pBase1_90,800+20,0,600);DEFAULT:TPErase;TPWrite "the Counter of line 1 is error,please check it!"; Stop;ENDTESTENDPROCPROC rPosition2()TEST nCount2CASE 1:pPlace2:=Offs(pBase2_0,0,0,0);CASE 2:pPlace2:=Offs(pBase2_0,600+10,0,0);CASE 3:pPlace2:=Offs(pBase2_90,0,400+10,0);CASE 4:pPlace2:=Offs(pBase2_90,400+10,400+10,0); CASE 5:pPlace2:=Offs(pBase2_90,800+20,400+10,0); CASE 6:pPlace2:=Offs(pBase2_0,0,600+10,200);CASE 7:pPlace2:=Offs(pBase2_0,600+10,600+10,200); CASE 8:pPlace2:=Offs(pBase2_90,0,0,200);CASE 9:pPlace2:=Offs(pBase2_90,400+10,0,200);CASE 10:pPlace2:=Offs(pBase2_90,800+20,0,200);CASE 11:pPlace2:=Offs(pBase2_0,0,0,400);CASE 12:pPlace2:=Offs(pBase2_0,600+10,0,400);CASE 13:pPlace2:=Offs(pBase2_90,0,400+10,400);CASE 14:pPlace2:=Offs(pBase2_90,400+10,400+10,400); CASE 15:pPlace2:=Offs(pBase2_90,800+20,400+10,400); CASE 16:pPlace2:=Offs(pBase2_0,0,600+10,600);CASE 17:pPlace2:=Offs(pBase2_0,600+10,600+10,600);CASE 18:pPlace2:=Offs(pBase2_90,0,0,600);CASE 19:pPlace2:=Offs(pBase2_90,400+10,0,600);CASE 20:pPlace2:=Offs(pBase2_90,800+20,0,600);DEFAULT:TPErase;TPWrite "the Counter of line 1 is error,please check it!"; Stop;ENDTESTENDPROCPROC rModify()MoveJ pHome,MinSpeed,fine,tGrip\WObj:=wobj0;MoveJ pPick1,MinSpeed,fine,tGrip\WObj:=wobj0;MoveJ pBase1_0,MinSpeed,fine,tGrip\WObj:=wobj0;MoveJ pBase1_90,MinSpeed,fine,tGrip\WObj:=wobj0;MoveJ pPick2,MinSpeed,fine,tGrip\WObj:=wobj0;MoveJ pBase2_0,MinSpeed,fine,tGrip\WObj:=wobj0;MoveJ pBase2_90,MinSpeed,fine,tGrip\WObj:=wobj0;ENDPROCENDMODULE。
ABB机器人RobotStudio创建机械装置方法RobotStudio创建机械装置方法1.打开RobotStudio软件,创建一个新工作站。
(此处省略)2.导入几何体(导入需要创建成机械装置的几何体,此处使用2个简单的几何体为例创建机械装置)3.创建机械装置。
1.点击建模--创建2.更改机械装置名机械装置--跳出对3.创建装置类型--此处以创建外轴为4.链接,接点,框架,校准的设置1.双击链接--跳出对话2.链接名3.选择部4.点击按5:勾选基链接(把其中一固定部件作5.按照上一步把其他部件都添加到链接里去。
(此处省略)7.框架和校准的设置(同样点击框架和校准,跳出对话框)8.编译机械装置。
1.点击接点--跳出对话2.关节名称3.选择关节类型4.选择子链5.设置关节轴6.可以通过操纵轴来设定关7.设定限制类型1.框架名称2.属于链接3.框架位置4.或直接选择5.选择是否设置1.选择校准2.校准位置注:A :若一个机械装置上有多个运动关节,则添加相应的关节(注意父链接和子链接要选择对)。
B :关节轴第一个位置:选中旋转轴心的点,第二格位1.点击下拉按钮--选择浮动2.浮动后下拉框架--出现编译机械装置3.点击编译4.点击添加姿态按钮--跳出创建姿态对话框。
(按要求可5.姿态名称6.关节值(可通过滑块调节各个姿态的位置)9.点击关闭,跳出对话框,点击“是”10.保存为库文件,以便调用----完成。
ABB RobotStudio软件二次开发:RobotStudio软件编程语言基础-RAPID1 ABB RobotStudio软件二次开发:RobotStudio软件编程语言基础-RAPID1.1 简介1.1.1 RAPID语言概述RAPID(Robot Application Programming Interface and Development)是ABB机器人编程的标准语言,专为工业机器人设计,用于控制机器人的运动和操作。
RAPID语言是一种结构化语言,支持模块化编程,使得程序易于理解和维护。
它包括了基本的编程结构,如循环、条件语句,以及高级功能,如中断处理和任务同步。
1.1.1.1 RAPID语言特点•模块化:RAPID程序可以被组织成多个模块,每个模块可以包含多个例行程序(Procedure)和功能(Function)。
•面向对象:虽然RAPID不是完全的面向对象语言,但它支持对象的概念,如工具、工件坐标系等。
•实时性:RAPID程序可以直接控制机器人的实时运动,包括点到点(PTP)、直线(LIN)和圆弧(CIRC)运动。
1.1.1.2 RAPID语言示例用于将机器人移动到绝对关节位置,MoveL用于直线运动,Set用于设置数字输出信号,WaitTime用于暂停程序执行。
1.1.2 RAPID语言在RobotStudio中的应用RobotStudio是ABB提供的一个强大的机器人离线编程和仿真软件,它允许用户在虚拟环境中进行机器人编程、测试和优化,而无需实际的机器人硬件。
在RobotStudio中,RAPID语言是进行机器人编程的主要工具,用户可以创建、编辑和测试RAPID程序,以实现各种自动化任务。
1.1.2.1 RobotStudio中的RAPID编程环境在RobotStudio中,RAPID编程环境提供了完整的RAPID语言编辑器,包括语法高亮、代码补全和错误检查等功能,帮助用户更高效地编写程序。
工业机器人RobotStudio软件入门在当今制造业快速发展的时代,工业机器人的应用越来越广泛。
而要有效地对工业机器人进行编程、模拟和调试,一款强大的软件是必不可少的,RobotStudio 就是其中的佼佼者。
对于初学者来说,掌握RobotStudio 软件的基本操作是迈入工业机器人领域的重要一步。
RobotStudio 是由瑞典 ABB 公司开发的一款工业机器人离线编程软件,它可以在虚拟环境中创建、模拟和调试机器人系统,从而减少实际生产中的错误和停机时间,提高生产效率和质量。
首先,我们来了解一下如何安装 RobotStudio 软件。
您可以从 ABB官方网站上下载最新版本的安装程序。
安装过程相对较为简单,按照提示逐步进行即可。
需要注意的是,安装过程中可能需要选择一些组件和功能,根据您的实际需求进行选择。
安装完成后,打开 RobotStudio 软件,您会看到一个简洁而直观的界面。
界面主要分为菜单栏、工具栏、视图窗口和状态栏等几个部分。
菜单栏包含了软件的各种功能选项,如文件操作、编辑、建模、仿真等。
工具栏则提供了一些常用工具的快捷按钮,方便您快速进行操作。
接下来,让我们创建一个新的机器人系统。
在菜单栏中选择“新建”,然后选择您所需要的机器人型号和控制器类型。
RobotStudio 提供了丰富的机器人型号库,涵盖了 ABB 公司的各种主流机器人产品。
创建好机器人系统后,就可以开始对机器人进行编程了。
RobotStudio 支持多种编程方式,其中示教编程是比较常用的一种。
示教编程就是通过手动操作机器人,让机器人记住各个关节的位置和运动轨迹,从而实现编程的目的。
在视图窗口中,您可以通过鼠标和键盘操作来移动机器人的关节,使其到达您想要的位置。
每到达一个位置,点击“添加位置”按钮,机器人就会记住这个位置。
除了示教编程,RobotStudio 还支持离线编程。
离线编程是在虚拟环境中通过编写程序代码来控制机器人的运动。