[TOC]
# 問題描述
## requirement
要求能控制过冲5~10mm就可以
# 方案
* 控制
* 就我們所知,5610(目前目標硬體)是用壓力控制,而不是速度控制。所以以下就都以壓力控制為主。
* 位置控制 + 壓力控制 by sandal
* 位置控制 on 55 or PLC
* 位置控制 by sandal + 壓力控制 by sandal
* 位置控制需和位置規劃搭配。
* 規劃
* 意義不大
* 先講規劃的定義, 目標, input, output
* S curve 就最佳
* ~~調參算法~~
* 虛擬控制器(動態調整)
* 效果有限制,前n次不好,要迭代。
* 並非適應性控制,它的定義更狹窄
* 減速時間
| 方案 | 前置需求 | 效果 | 花費時間 | 備註 |
| --------------------------------------- | ------------------ | -------------------------------- | -------- | --- |
| 位置控制 + 壓力控制 by sandal | 位置規劃, 時間精準 | 最有效 | | |
| 位置控制 by sandal + 壓力控制 by sandal | 位置規劃 | | | 沒有精準時間的workaround |
| 位置規劃 | | 應該沒用 | | 主要是為了控制的前置 |
| 虛擬控制器(動態調整) | | 有限,每次變動要先迭代幾次才會準 | 較少 | |
# 條件
## 規劃與控制劃分
* 規劃
* 決定走的平穩程度 (acceleration, jerk)
* 控制
* 決定走的準不準,是否貼合規劃。
## 時間精準
* why
* 時間不準feedback 的 位置轉換為速度時會誤算
* output 的 控制量會因為時間不準,等效就是忽大忽小。
### linux realtime 測試
[kernel/git/clrkwllms/rt-tests.git](https://git.kernel.org/pub/scm/linux/kernel/git/clrkwllms/rt-tests.git/)
gitee 上應該也有鏡像
e.g. `sudo ./cyclictest -a -t 1 -n -p99` 測realtime 能力。
要做控制了話,至少要<100us。
## 規劃(block)
規劃的精神是,分而治之,連繫物理量。
* 連繫物理量
* 加速度, jerk 才會和實際機器的特性有關。
* f=ma, T=Ia --> 馬達提供的力,限制機器的最大加速度
* 若機器的慣量會變(非線性),見下方 分而治之
* jerk --> 震動
* 位置
* 任何機器都有位置的極限,任何規劃都要在位置的條件之下。
* 如果是用加速時間之類的東西,每一段的速度差都不同,加速度因此都不同,很可能超過機器力的極限。
* 分而治之
* 一個連續的規劃拆分成數個小的、相似的規劃。
* 連續的線條,有彎曲點,彎曲程度決定速度上限(向心加速度能力有限),所以切成不同段。
* 非線性的規劃:按照加速度上限拆成多段,每一段假設為線性做規劃。
* 尚無最佳解

[A NEW VELOCITY PROFILE GENERATION FOR HIGH EFFICIENCY CNC MACHINING APPLICATION ](http://lbms03.cityu.edu.hk/theses/c_ftt/mphil-meem-b23405430f.pdf)
7段加減速,香港城市大學,2008
CiA402 甚至訂進去規範。PP mode & Object 6086h : Motion profile type
雖然有這些進階的方法,但就像上面說的,準度主要靠控制,所以猜測就算用梯型速度規劃也沒問題,
## 順逆運動學
十字頭與模板之間是非線性的連桿
> 希望可以提供位置轉換公式。不用所有的,其中一種。
set 十字頭位置為x, 模板位置為p, $p=f(x)$, f為順向運動學。
$x=f^{-1}(p)$ 為逆向運動學。
一般規劃都是先規劃末端點(模板),再反推後方(十字頭)的速度profile。
三段曲線,其實就是 人為設定的曲線近似 非線性所以切分規劃+逆向運動學(所以加速度可以設定不同)。
## PID
要有週期參數。
[pms67/PID](https://github.com/pms67/PID/blob/master/PID%20Controller%20Implementation%20in%20Software.pdf)
s domain --> z domain --> difference euqation
## 控制圖說明
> 找流力專業者,泵的特性

### 泵的特性
如果要回答,為什麼 位置、速度、轉速、壓力 回授都可以控制十字頭的位置了話,就要把控制圖分解到最細的系統特性。特別是解釋泵的特性。
## 虛擬控制器
動態調參需要理論,最好的理論是適應性控制(adaptive contronl).
這不是適應性控制,因為沒有feedback。
假設 目前的整個open loop 的控制器系統是一整個plant,但我們完全不知道它的特性、動態。
用一個虛擬的控制器,控制這個plant。如果這個plant 的特性還在控制器的收斂範圍內,則可以控制。
controller input: position error, output: 減速時間。
不一定可行,就在賭虛擬plant的特性。
效果上限:環境改變,一定要空模跑幾次才會重新接近好的參數。
### 證明最可行
1. 強化學習-policy gradient
2. 虛擬控制器
3. 人工找出參數的對應。
---
以下是了解油壓系統用資料,已經知道的不需要看。
# 先備知識
3 種case,控制壓力的來源
1. 馬達 only
* Pump Direct Drive
* direct driven hydraulic (**DDH**)
* 有3種case
* motor+1 unidirectional pump+directional control valve
* 只有方向閥,而沒有比例功能。
* 本次主要的問題
* 本公司提供的方案。
* 可能不屬於DDH,因為還是要valve。
* 完全找不到論文,motor+servo valve的還比較多。
* 可能要用motor+1 bidirectional pump 的transfer function 但是砍半。
* motor+1 bidirectional pump
* 中國論文多
* 建議至少 modify to this
* motor+2 bidirectional pump
* 歐美論文多
* 可能是最新的研究方向。
* > 5610
2. 馬達+伺服比例閥(servo valve)
* 因為沒有 tank
* 只有馬達了話,背壓會永遠等於0,過低壓的油壓系統會有 hysteresis,而且效率最高點是在中間的時候,而非在最低轉速。
* > maybe 5580
3. 伺服比例閥
* 馬達+tank 視為恆壓源
* 教科書+ most of 文獻。
* 最舊,穩定的方法。比較耗能
我們focus 在case 1。所以也不用研究
[ 《PANIX北安實業有限公司》 小型油壓動力組合 ](https://www.youtube.com/watch?v=EMuMIe4mOF0)
油壓動力單元=油壓缸+液壓伺服閥(servo valve)+油壓泵(恆壓源)
液壓伺服閥 是 (電流,壓差) 正比 流量的元件。
[伺服閥的流量特性曲線](http://www.sgdeng.com.tw/knowledge_page?knowledgeType=&id=8&lang=cht)
流量是 $flow=m^3/s$ 而 $m/s$是速度,所以假設不可壓縮流,**推桿的速度就是 flow/油壓缸截面積**。推杆速度再積分就是位置了。這是open loop 時的假設。
實際上,伺服閥的流量會和壓差成正比。當末端有質量m,m有加速度a。ma/A就是推桿給油壓缸內部的反向壓力。
<div style="width:800px"> <strong style="display:block;margin:12px 0 4px"><a href="https://slidesplayer.com/slide/11615261/" title="4-1 液壓基本概念 液壓系統之構成 液壓系統基本的構成包括:電動機或內燃機、液壓泵、液壓油、液壓控制閥、液壓致動器、儲油箱、及其他附件等。" target="_blank">4-1 液壓基本概念 液壓系統之構成 液壓系統基本的構成包括:電動機或內燃機、液壓泵、液壓油、液壓控制閥、液壓致動器、儲油箱、及其他附件等。</a></strong><iframe src="https://player.slidesplayer.com/62/11615261/" width="800" height="649" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" style="border:1px solid #CCC;border-width:1px 1px 0" allowfullscreen></iframe><div style="padding:5px 0 12px"></div></div>
[Electric Motors vs. Fluid Power: Robotic System Designers Have a Choice](https://www.techbriefs.com/component/content/article/tb/supplements/mct/features/articles/11776)
[Modeling and simulation of Hydraulic servo system with different type of controllers](https://www.researchgate.net/figure/Block-diagram-of-hydraulic-system_fig1_278412593)
有油壓系統的model(transfer function)
simulation only no experiment
[Application of Fractional Order Controllers on Experimental and Simulation Model of Hydraulic Servo System](https://www.researchgate.net/figure/Block-diagram-of-hydraulic-servo-system_fig1_314136096)
## 鎖模機構
[ 全立發 CLF - 外曲肘式射出成型機 CLF TW II - 產品動畫 Products Animation | 普拉瑞斯創意 ](https://youtu.be/ZFMKvEvQxrE?feature=shared&t=29)
兩節,第一節中間多一桿
曲軸式鎖模機構到底後就持壓了,油壓缸不用再施力(直壓式才要)。
曲軸合模機構的正逆向運動學。
## 泵
機械構造only,無電機部份。
螺桿泵 為主
注意泵一般不能反轉螺絲、水封...都有對應壓力。 e.g. [ 三螺杆泵可以反转吗?](http://www.tjyd66.com/Article/sanluoganbengkeyifan.html)。
水泵特性曲线。
定轉速, pressure(H), flow rate(Q) 圖
[测定迷宫螺旋泵和密封实际性能的实验方法](http://www.chvacuum.com/pumps/jixie/12563.html)
pump 要加上出水口才是完整的control block。此時能夠決定唯一的一條曲線。
(H,Q)=pump(n)
[How to Read a Pump Curve](https://www.csidesigns.com/blog/articles/how-to-read-a-pump-curve)
不是所有pump 特性都一樣。 positive displacement (PD) pump 是 speed 完全正比 流量 (不管壓力)
[CHARACTERISTICS OF SCREW PUMPS](https://kb.osu.edu/bitstream/handle/1811/34516/3/OS_ENG_v12_i02_006.pdf)
## 控制系統
機構等效: mot --> 泵 --> 油壓缸 --> 鎖模爪 --> 模
油壓缸位置為x,模位置為p, p=f(x), f為正向運動學。p-->x 即反運動學。
油壓缸後的東西,直接don't care,就視為 f_out=ma。
pump is critical part.
[Transfer Function of Hydraulic System](https://www.electricalengineeringinfo.com/2017/05/transfer-function-mathematical-model-hydraulic-system.html)