Matlab-具有最優傳力性能的曲柄滑塊機構的設計程序講解(詳細教程)

Matlab-具有最優傳力性能的曲柄滑塊機構的設計程序講解

序言

大家好,許久不見,最近一直再忙課程設計………沒時間更新……望海涵看到標題工科生應該很快就能明白今天blog的核心內容,其實不是工科的也沒事,互聯網時代,專業早已不是限制門檻,所有學科幾乎相互貫通,互聯網時代獲取信息可謂是簡單至極,就像大家百忙之中抽取時間讀一下鄙人的陋文,不也拙實令不才欣喜萬分嗎😊

曲柄滑塊機構介紹

曲柄滑塊機構是指用曲柄和滑塊來實現轉動和移動相互轉換的平面連桿機構。曲柄滑塊機構中與機架構成移動副的構件爲滑塊,通過轉動副聯接曲柄和滑塊的構件爲連桿。
曲柄滑塊機構廣泛應用於往復活塞式發動機、壓縮機、衝牀等的主機構中,把往復移動轉換爲不整週或整週的迴轉運動;壓縮機、衝牀以曲柄爲主動件,把整週轉動轉換爲往復移動。偏置曲柄滑塊機構的滑塊具有急回特性,鋸牀就是利用這一特性來達到鋸條的慢進和空程急回的目的

曲柄滑塊機構的分類

對心曲柄滑塊機構

下圖1左所示的曲柄滑塊機構,滑塊的導路中心線通過曲柄的迴轉中心A,爲對心曲柄滑塊機構。如果將對心曲柄滑塊機構中的滑塊C作爲機構運動的輸出件,則滑塊C運動到兩個極限位置時,原動件曲柄AB在對應位置間的夾角等於零,即機構的極位夾角爲0°,說明對心曲柄滑塊機構沒有急回運動特性。

偏置曲柄滑塊機構

下圖1右所示曲柄滑塊機構,滑塊的導路中心線不通過曲柄的迴轉中心A,爲偏置曲柄滑塊機構。與對心曲柄滑塊機構不同,如果將偏置曲柄滑塊機構中的滑塊C作爲機構運動的輸出件,則偏置曲柄滑塊機構具有急回運動特性。
圖一

曲柄滑塊機構設計常見問題

機器種類很多,但它們都是由各種機構組成的,曲柄滑塊機構就是常用機構之一。它有一個重要特點是具有急回特性。故按行程速比係數K設計具有最優傳力性能的曲柄滑塊機構是設計中常遇到的問題。本文將x作爲設計變量,給出瞭解決問題的方法。

可以公開的情報(所用公式參考網上已公開論文)

(公式參考:具有最優傳力性能的曲柄滑塊機構的設計——寧海霞 董萍,文末附錄原文檔)
(本文不在於講解原理與推導公式,只選擇原理文檔重要之處摘錄,不懂之處滑到文末查看原文檔,重點在於matlab仿真分析)
---------------------------------------------------原文摘錄--------------------------------
在曲柄滑塊機構的設計中,將x作爲設計變量,求出已知滑塊行程H,行程速比係數K時機構傳力性能最優的x值,使得最小傳動角γmin爲最大,從而設計出此機構。
機器種類很多,但它們都是由各種機構組成的,曲柄滑塊機構就是常用機構之一。它有一個重要特點是具有急回特性。故按行程速比係數K設計具有最優傳力性能的曲柄滑塊機構是設計中常遇到的問題。本文將x作爲設計變量,給出瞭解決問題的方法。
曲柄滑塊機構如圖1所示,圖中AB爲曲柄,長度爲a,BC爲連桿,長度爲b,偏心距爲e。γ愈大,對機構傳動愈有利,它是機構傳動性能的重要指標之一,工程上常以γ值來衡量機構的傳力性能。
在這裏插入圖片描述
X和最小傳動角γmin的關係
在這裏插入圖片描述
在這裏插入圖片描述

Matlab編程實現最優設計

已知數據:X取值範圍爲0~627mm,行程H = 650mm,極位夾角等於46°。
第一步:
其實我們要做的非常簡單,就是把上圖中的(2),(3),(4)公式轉化成matlab語句,輸出圖像,圈取最優解區間,縮小範圍,定位最優解。
首先:
X的值是一個取值區間,我們要生成的圖像也是一個曲線形式(便於觀察),不妨設每一個X對應的值爲Y,即Y=(kx^2+bx+c)(x,k,b,c爲常數)的一個函數關係。
那麼我們必須注意的一點就是一 一對應關係,一個X只能對應一個Y值(搞錯的話,matlab會報錯),我們可以仿照python中的切片命令,將0~627切成628的小片段(以一個單位長度進行切片),當然也可以切成210、34……這樣matlab會按照分開的長度進行彙報數據,也是爲了方便下一步觀察。
然後
要做的便是如何將公式轉化爲matlab語句,其實自我感覺matlab和python特別相像,初學者在很短的時間內就可以編譯較爲複雜的程序,這點和python特別相似,它不像c或c+那般不友好(從入門到放棄……),這裏我們只需要注意幾個地方。
(此處只是相對於我自己的解題方法)
1..*與 *在matlab中是有區別的,我們計算都是相對於一個矩陣,因爲X的待取值組成一個矩陣(1行628列)
2.X(cosd(60)) != X * (cosd(60))注意千萬不要省略
3..*cosd(60) = 1/2 cos(60) = -0.95241298041516弧度制和角度制……
代碼:

ones_1 = ones(1,628);%生成一個1210列的全1矩陣
x1 = 0:1:627;%Xmax = 行程 / tan(極位夾角) = 627.698  對數組每間隔三個整數取一個計算點 
x2 = x1 .* x1 ;%X2 = X1對應數組每個值的平方
b = x1 * (cosd(46) - 1) + sqrt(650 * 650 - x2 * sind(46) * sind(46) ); 
a1 = b / 2;
a2 = a1 .* a1;%a2 = a1對應數組每個值的平方
e = sind(46) * (x2 + 2 * a2) / 650 ;
fenzi = e + a1;%分子
fenmu = x1 + a1;%分母
fenshu = fenzi ./ fenmu;% .**的區別
r = acosd(fenshu);
%1矩陣除以cos(fenshu) 算出0-627中每個整數對應的 r
% r 最小傳動角度
plot(x1 , r);

函數圖像,找取極大值
在這裏插入圖片描述
圖像只是讓我們確定區間,方便定位,本次區間在(500,600)之間

在這裏插入圖片描述
我們可以很清楚的看到,最小傳動角的極大值爲37.3327,此時我們可知對應的X = 549,則帶入程序可求得a,b,e的值
在這裏插入圖片描述
在這裏插入圖片描述
到這就結束了----
能看到最後真的不容易,,,點個贊👍👍👍👍👍👍👍👍
原文鏈接

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章