step函數(shù) 格式step(x,x0,h0,x1,h1) x為自變量,在ug里一般定義為time x0為自變量初始值,在ug里可以是時(shí)間段中的開始時(shí)間點(diǎn) h0為自變量x0對應(yīng)的函數(shù)值,可以是常數(shù)、設(shè)計(jì)變量或其他函數(shù)表達(dá)式 x1為自變量結(jié)束值,在ug里可以是時(shí)間段中結(jié)束時(shí)間點(diǎn) h1為自變量x1對應(yīng)的函數(shù)值,可以是常數(shù)、設(shè)計(jì)變量或其他函數(shù)表達(dá)式 函數(shù)曲線圖
數(shù)學(xué)表達(dá)式 step(time,t0,h0,t1,h1)= h0(time≤t0) h0+(( time-t0)/(t1-t0))2*(h1-h2) h1(time≥t1) 解釋: 在時(shí)間段t0到t1時(shí)間段內(nèi),函數(shù)以中間波浪線樣子的二次函數(shù)變化,在時(shí)間t0之前的時(shí)間段內(nèi),函數(shù)是h0的恒定數(shù)值變化,在時(shí)間t1后,函數(shù)是h1的恒定數(shù)值變化,也就是函數(shù)值經(jīng)過時(shí)間段后t0到t1后,函數(shù)值發(fā)生了突變,當(dāng)t0與t1非常接近的時(shí)候,可以近似認(rèn)為,函數(shù)變化為一條直線,但是t0和t1不能相等,從t0-t1的數(shù)學(xué)表達(dá)式就可以知道,這是一個(gè)無解,h0和h1可以相等,相等以后,整個(gè)函數(shù)曲線即為一條直線
多個(gè)時(shí)間段內(nèi)函數(shù)值發(fā)生突變的函數(shù)表達(dá)
step(time,2,1,3,3)+step(time,4,0,5,-3) 也可以表達(dá)成step(time,2,1,3,step(time,4,0,5,-3)) 一般使用第一種加法形式較好,簡潔明了,便于理解 對于時(shí)間段4-5內(nèi),時(shí)間點(diǎn)4位置對應(yīng)數(shù)值不是3,而是0,這是一個(gè)相對概念,指此處函數(shù)值是相對于上一個(gè)時(shí)間段函數(shù)值,所以為0,如果是3的,那4對對應(yīng)函數(shù)值將變成6,因此可見,相對函數(shù)值為3-3=0,5時(shí)間點(diǎn)對應(yīng)函數(shù)值,同理為0-3= -3。 有這個(gè)例子可知,可以用step函數(shù)來控制連桿在不同時(shí)間段做不同運(yùn)動(dòng)規(guī)律的運(yùn)動(dòng)。
不同時(shí)間段,連桿做不同函數(shù)運(yùn)動(dòng)形式
t0-t1時(shí)間段內(nèi),讓連桿以f(x)函數(shù)形式運(yùn)動(dòng);t1-t2時(shí)間段內(nèi),讓連桿以直線形式運(yùn)動(dòng),在t2-t3內(nèi),讓連桿以g(x)函數(shù)形式運(yùn)動(dòng),以此實(shí)現(xiàn)連桿在不同時(shí)間段以兩種或多種函數(shù)形式運(yùn)動(dòng)。 t0-t1時(shí)間段函數(shù)圖形轉(zhuǎn)換
按照相同時(shí)間段將第一個(gè)函數(shù)運(yùn)動(dòng)圖轉(zhuǎn)換為第二個(gè)函數(shù)運(yùn)動(dòng)圖,按照step函數(shù)表達(dá)可以寫出: t0-t1時(shí)間段,step表達(dá)為 (step(time,t0+0.001,0,t0,1)+step(time,t1+0.001,0,t1,-1)) 由于step函數(shù)時(shí)間段起始和結(jié)束時(shí)間點(diǎn)不能相等,也就是不能是垂直直線形式圖變,因此可以在時(shí)間點(diǎn)t0附近添加一個(gè)微小時(shí)間段,近似垂直直線形式突變。 如果將轉(zhuǎn)換形式的step函數(shù)*f(x),那么連桿在t0-t1時(shí)間段的運(yùn)動(dòng)形式就可以以f(x)運(yùn)動(dòng),大家也可以從函數(shù)值上來理解,就是1乘以任何數(shù)值無法改變被乘數(shù)值,即f(x)任何函數(shù)值與1相乘,數(shù)值不變,即實(shí)現(xiàn)連桿在t0-t1時(shí)間內(nèi)以f(x)形式運(yùn)動(dòng)。 由此可知在t0-t1時(shí)間段內(nèi),f(x)運(yùn)動(dòng)形式表達(dá)為 (step(time,t0+0.001,0,t0,1)+step(time,t1+0.001,0,t1,-1))* f(x) t1-t2時(shí)間段函數(shù)圖形轉(zhuǎn)換
在t1-t2時(shí)間段,這個(gè)時(shí)間段為直線運(yùn)動(dòng),按照矩形方波圖形,step函數(shù)形式表達(dá) step(time,t1+0.001,0,t1,1)+ step(time,t2+0.001,0,t2,-1) 依據(jù)第一個(gè)時(shí)間段詳細(xì)講解,可知,t1-t2時(shí)間段內(nèi),連桿運(yùn)動(dòng)形式表達(dá)為 (step(time,t1+0.001,0,t1,1)+ step(time,t2+0.001,0,t2,-1))*h1 t2-t3時(shí)間段函數(shù)圖形轉(zhuǎn)換
t2-t3時(shí)間段,根據(jù)矩形方波,step表達(dá)為 step(time,t2+0.001,0,t2,1)+step(time,t3+0.001,0,t3,-1) 由上可知,在t2-t3時(shí)間段內(nèi),g(x)運(yùn)動(dòng)形式表達(dá)為 (step(time,t2+0.001,0,t2,1)+step(time,t3+0.001,0,t3,-1))*g(x) 總結(jié) 不同時(shí)間段,不同函數(shù)運(yùn)動(dòng)形式step表達(dá)方式,只需要將每個(gè)時(shí)間段變成0-1的矩形方波,將時(shí)間段開始和結(jié)束時(shí)間點(diǎn)添加一個(gè)微小時(shí)間段,對開始時(shí)間點(diǎn)添加微小時(shí)間增量的時(shí)間段,進(jìn)行step函數(shù)書寫后,再對結(jié)束時(shí)間點(diǎn)進(jìn)行相同的step函數(shù)書寫,將開始和結(jié)束時(shí)間的step函數(shù)進(jìn)行加和后再乘以相應(yīng)的函數(shù),即可完成相應(yīng)函數(shù)的運(yùn)動(dòng)形式。 第一個(gè)圖中連桿的兩種函數(shù)g(x)、f(x)還有直線的step函數(shù)控制為: (step(time,t0+0.001,0,t0,1)+step(time,t1+0.001,0,t1,-1))* f(x)+(step(time,t1+0.001,0,t1,1)+ step(time,t2+0.001,0,t2,-1))*h1+(step(time,t2+0.001,0,t2,1)+step(time,t3+0.001,0,t3,-1))*g(x)
多項(xiàng)式函數(shù) poly(x,x0,a0,a1,a2,……,a30) =a0+a1*(x-x0)+ a1*(x-x0)2+……+a30*(x-x0)30 x是自變量。x0為初始值,a0到a30為系數(shù),當(dāng)x0=0時(shí),取到a1系數(shù),則多項(xiàng)式為一條一次曲線,y=a0+a1*x,當(dāng)取到a2系數(shù)時(shí),則多項(xiàng)式為一條二次曲線(拋物線),y=a0+a1*x+a2*x2 由此可知,多項(xiàng)式函數(shù)是控制連桿線性運(yùn)動(dòng)或二次曲線運(yùn)動(dòng)的函數(shù),x取變量time
余弦函數(shù)——簡諧運(yùn)動(dòng) shf(x,x0,a,w,phi,b) =asin(w(x-x0)-phi)+b 簡諧運(yùn)動(dòng)既是最基本也是最簡單的一種機(jī)械振動(dòng),如果一個(gè)質(zhì)點(diǎn)的運(yùn)動(dòng)方程有如下形式:
即,質(zhì)點(diǎn)的位移隨時(shí)間的變化是一個(gè)簡諧函數(shù),顯然此質(zhì)點(diǎn)的運(yùn)動(dòng)為簡諧振動(dòng)。w為角速度,單位為度/秒或者弧度/秒。 下圖為簡諧運(yùn)動(dòng)的圖像,表示的是振動(dòng)物體的位移隨時(shí)間變化的規(guī)律。是一條正弦或余弦曲線。
由以上講解可知,shf函數(shù)中,x為變量,一般取time,x0為初始時(shí)間點(diǎn),a為振幅,w為角速度,phi為初項(xiàng),也就是t等于0時(shí),角度值,b表示截距,也就是余弦函數(shù)的位移。
應(yīng)用實(shí)例,連桿運(yùn)動(dòng)規(guī)律圖如下
建??臻g,曲線工具,直線命令,在xy平面內(nèi)繪制兩條垂直直線
進(jìn)入運(yùn)動(dòng)仿真,新建運(yùn)動(dòng)仿真,默認(rèn)設(shè)置確定,新建連桿,由于直線不是實(shí)體,因此需要設(shè)置質(zhì)心和質(zhì)量等參數(shù),任意設(shè)置即可,另一條直線連桿設(shè)置相同
仿真導(dǎo)航器里,兩個(gè)直線連桿
運(yùn)動(dòng)副,選擇連桿1,由于是直線,所以“選擇連桿”、“指定原點(diǎn)”、“指定矢量”三個(gè)直接被選中,如果方向不對可以利用反向進(jìn)行調(diào)整
驅(qū)動(dòng),設(shè)置恒定速度10mm/s,根據(jù)規(guī)律圖2-3秒時(shí)間段可知,2秒時(shí)位移為20,3秒時(shí)位移為30,因此驅(qū)動(dòng)速度為10
運(yùn)動(dòng)副,選擇連桿2,選擇方法同上一個(gè)相同,基本里選擇連桿1,即連桿2相對于連桿1運(yùn)動(dòng)
驅(qū)動(dòng),選擇函數(shù)
點(diǎn)擊函數(shù)向下箭頭,調(diào)出函數(shù)對話框,默認(rèn)設(shè)置,選擇新建函數(shù)按鈕
切換到運(yùn)動(dòng)函數(shù),拉到最后,里面有step函數(shù),poly函數(shù)和shf函數(shù),按照圖片所示,利用這三個(gè)函數(shù)對連桿進(jìn)行驅(qū)動(dòng)
雙擊任何一個(gè)函數(shù)后,函數(shù)自動(dòng)被添加上來,依次來修改參數(shù)
依據(jù)運(yùn)動(dòng)曲線時(shí)間段被分解成0-2,2-3,3-4,4-8,8-10等5個(gè)時(shí)間段,根據(jù)之前的講解,將每個(gè)時(shí)間段轉(zhuǎn)換成矩形方波,進(jìn)行step函數(shù)表達(dá),結(jié)果分別為: 時(shí)間段0-2秒,y=20的直線運(yùn)動(dòng) (STEP( time, 0.0001, 0, 0, 1)+STEP( time,2.0001, 0, 2, -1))*20 時(shí)間段2-3秒,y=10t的一次線性運(yùn)動(dòng),由于連桿1的運(yùn)動(dòng)速度為10mm/s,因此,這個(gè)時(shí)間段內(nèi)運(yùn)動(dòng)函數(shù)即為y=10t,轉(zhuǎn)換為多項(xiàng)式函數(shù)表達(dá),a0即為截距0,a1系數(shù)為10,x0初項(xiàng)為0 (STEP( time, 2.0001, 0, 2, 1)+STEP( time,3.0001, 0, 3, -1))*POLY( time, 0, 0, 10) 時(shí)間段3-4秒,y=30的直線運(yùn)動(dòng) (STEP( time, 3.0001, 0, 3, 1)+STEP( time,4.0001, 0, 4, -1))*30 時(shí)間段4-8秒,y=20*sin(360/4*t)+30的正弦函數(shù),振幅為20;w角速度,時(shí)間段內(nèi)為4s,想讓連桿2在4秒內(nèi)運(yùn)動(dòng)一個(gè)完整波形,也就是360度,因此角速度計(jì)算為360/4=90度/秒;截距為30;初項(xiàng)為0,因?yàn)槭菢?biāo)準(zhǔn)的正弦函數(shù),從0度開始;注意shf函數(shù)中,w位置90d表示90度/s,如果不加d的話,則表示的弧度單位 (STEP( time, 4.0001, 0, 4, 1)+STEP( time,8.0001, 0, 8, -1))*SHF( time, 0, 20, 90d, 0, 30) 時(shí)間段8-10秒,直線y=30運(yùn)動(dòng) (STEP( time, 8.0001, 0, 8, 1)+STEP( time,10-0.0001, 0, 10, -1))*30 函數(shù)編寫完后,確定,返回xy函數(shù)管理器,再次確定即可,一直到返回運(yùn)動(dòng)副對話框,確定即可完成連桿2運(yùn)動(dòng)副創(chuàng)建
確定后,兩條直線連桿創(chuàng)建的滑動(dòng)副
標(biāo)記,選擇連桿2,指定連桿2下部端點(diǎn)為標(biāo)記點(diǎn)
追蹤,方正導(dǎo)航里,選擇標(biāo)記,確定
解算方法,設(shè)置時(shí)間段為10秒,步數(shù)為200
求解,對結(jié)算方案,進(jìn)行解算
動(dòng)畫,勾選追蹤,開始播放動(dòng)畫
標(biāo)記點(diǎn)的軌跡圖為下圖
如果發(fā)現(xiàn)函數(shù)不對的話,可以再次打開連桿2的運(yùn)動(dòng)副,找到驅(qū)動(dòng),函數(shù),f(x)函數(shù)表達(dá)式,選擇下圖中編輯按鈕,進(jìn)入函數(shù)表達(dá)里進(jìn)行修改
仿真導(dǎo)航器,xy-作圖,右鍵,選擇新建,按照基準(zhǔn)坐標(biāo)系,添加標(biāo)記a001,在y軸的位移
位移時(shí)間圖如下,有圖分析可知,連桿2運(yùn)動(dòng)軌跡達(dá)到要求,在5個(gè)時(shí)間段內(nèi)進(jìn)行了多種規(guī)律運(yùn)動(dòng)
精細(xì)追蹤,一針一針在相應(yīng)位置添加標(biāo)記,可以利用編輯,來拖拽標(biāo)記位置
|
|