Contents — find the section you need
Model Öngörücü Kontrol (MPC), mevcut bir komutun gelecek adımlarda ne yapacağını tahmin eder, kısıtlamaları karşılarken izleme ve çabayı en iyi şekilde dengeleyen bir komut dizisi seçer, yalnızca ilk komutu uygular, ardından ölçer ve tekrar çözer. Bu geriye doğru ufuk döngüsü, girdilerin sınırları olduğunda, durum değişkenlerinin güvenlik sınırları olduğunda, girdiler etkileşime girdiğinde veya gelecekteki eğrilik ve gecikme önemli olduğunda değerlidir. Proses tesislerinden araçlara, robot hareketine ve enerji sistemlerine kadar birçok alanda kullanılır.
MPC, PID'nin evrensel bir alternatifi değildir. Geç bir durum tahmini, yanlış bir model, uygulanabilir olmayan bir problem veya kaçırılmış bir son tarih içeren bir öngörücü optimizasyon algoritması, matematiksel kısıtlamaları tamamlanmış görünse bile güvenli hale gelmez. Birçok sağlam mimari, yol, enerji, termal veya çok değişkenli koordinasyon için MPC'nin altında hızlı PID akım/hız döngülerini korur. Yürütme sınırı için ROS 2 Temel Kılavuzu ve mobil robot kontrolcüsünü besleyen zamanlama ve konumlandırma varsayımları için Visual SLAM Temel Kılavuzu okuyun.
Pratik Sonuç
-
x durumundan ve u girişinden N ufuk çizgisini oluşturun ve kısıtlamasız bir komutu sonradan kırpmak yerine, giriş, giriş hızı, durum ve güvenlik kısıtlamalarını optimizasyona dahil edin.
-
Çözücü geç kaldığında, sayısal olduğunda veya uygulanamaz olduğunda ne olacağını dağıtımdan önce belirtin. Son tarih, geri dönüş ve bağımsız durdurma davranışı kontrolcünün parçalarıdır.
-
İlgili zaman ölçeğini tahmin eden en küçük modelle başlayın. Daha büyük bir model, kararları iyileştirmeden çalışma süresini, tanımlama hatasını ve bakımı kötüleştirebilir.
- Açık operasyonel önceliklerden (güvenlik marjı, izleme, enerji, aşınma, konfor ve hesaplama) ufuk ve ağırlıkları ayarlayın; körü körüne bir izleme ağırlığını yükselterek değil.
Sezgi: Virajdan önce fren yapmaya karar verin
Basit bir geri besleme kontrolcüsü, yanal hatayı gördükten sonra bir aracı döndürebilir. MPC, ilerideki virajı, hızı, direksiyon aralığını, lastik sınırlarını, ivmeyi ve engel açıklığını birlikte değerlendirebilir. Aday direksiyon ve ivme dizilerini değerlendirir, uygulanabilir bölgede kalan birini seçer, yalnızca ilk hareketi gerçekleştirir ve yeni bir ölçüm geldiğinde eski tahmini atar. Bu nedenle MPC bir falcı değildir. Gelecek hakkında kısa ömürlü hipotezleri tekrar tekrar test eden bir geri besleme kontrolüdür.
Sinyal akışı ve geri çekilen ufuk
Diyagram: Duskcoil, ölçülmekten ziyade kavramsal. Tahmin edilen bir yörünge, model tabanlı bir adaydır ve bir eylem uygulandıktan sonra gözlemle güncellenmelidir.
Minimal doğrusal MPC formülasyonu
Ayrık doğrusal model için
x durum, u giriş, w bozulma ve y çıkıştır. Referans r için bir tahmin ufku N boyunca, yaygın bir ikinci dereceden maliyet şöyledir:
burada \Delta u_k=u_k-u_{k-1} ve Q,R,S,P durum takibinin, komut büyüklüğünün, ani değişimin ve terminal davranışının önemini ifade eder. Bunlar matematiksel biçimde mühendislik öncelikleridir. Örneğin, yalnızca yanal hatayı cezalandırmak, yolcular, lastikler veya bir aktüatör için kabul edilemez şiddetli direksiyon hareketlerine neden olabilir.
Sınırsız bir regülatörden temel fark, açıkça belirtilmiş uygulanabilir kümedir:
Sınırlar direksiyon, akım, sıcaklık, eklem açısı, pil durumu, basınç veya engel açıklığını temsil edebilir. Kısıtlamalar çelişebilir. Dokunulmaz bir çarpışma veya donanım sınırını sabit tutun; Negatif olmayan bir gevşeklik (\epsilon\ge0) yalnızca kasıtlı olarak gevşetilebilir kısıtlamalar için kullanılır ve cezalandırılır, örneğin \rho\lVert\epsilon\rVert^2. Gevşekliğin ne zaman kullanıldığını kaydedin: yumuşak bir kısıtlama, ihlalin zararsız olduğunun kanıtı değil, ilan edilmiş bir uzlaşmadır.
Tahmin, gecikme ve model uyumsuzluğu
MPC, x_k'den tahmin yapar, ancak bu durum normalde bir sensör füzyon tahminidir. Görsel SLAM kullanan bir mobil robot için, konumlandırma gecikmesi, yeniden konumlandırma sıçramaları ve tutarsız kareler her optimizasyonun başlangıç durumunu bozar; bkz. Görsel SLAM Temel Bilgileri. Eski bir durum ve yeni bir referansla mükemmel bir problemi çözmek, fiziksel olarak gecikmiş bir komut verir.
Uyumsuzluk, sürtünme, yük, rüzgar, lastik kayması, değişen termal kapasite ve modellenmemiş esnekliği içerir. Yanıtlar arasında bozulma durumunun artırılması veya bütünleşik eylem, çevrimiçi parametre güncellemeleri, çoklu modeller, sağlam/tüp MPC marjları ve hızlı stabilize edilmiş iç döngü yer almaktadır. Hiçbiri, uyumsuzluk tasarım zarfının dışında olduğunda bağımsız durdurma davranışının yerini almaz.
Ufuk ve ağırlıkların ayarlanması
Örnekleme zamanı T_s ve ufuk N'yi, NT_s'in ilgili gecikmeyi, durma mesafesini, baskın geçici durumu ve rota eğriliğini kapsayacak şekilde seçin; ancak çalışma süresi ve uzak gelecekteki model hatasının baskın olacağı kadar uzak olmasın. Daha kısa bir kontrol ufku, sonraki girdileri sabit tutabilir ve karar değişkenlerini azaltabilir.
Ayarlama şu sırayla yapılır: birimleri ve katı güvenlik sınırlarını sabitleyin; operasyonel görev için izleme ağırlıklarını Q seçin; enerji, aşınma ve düzgünlüğü yönetmek için R ve S'ü yükseltin; ardından gürültü, yük, gecikme ve bozulma altında en kötü durum çözücü süresini ve uygulanabilirliksizliği ölçün. Çalışma noktasını seçmeden önce hem kısa vadeli N hem de uzun vadeli ufku test edin. Sistem "hızlı görünene" kadar Q'yı yükseltmek, optimizasyoncunun katı kısıtlama sınırlarında kalmasına ve kısıtlamalar karşılandığında bile az bir marj bırakmasına neden olabilir.
| Gözlem | Olası neden | Önce inceleyin | Tipik eylem |
|---|---|---|---|
| Bir eğrinin sonunda | ufuk çok kısa; durum gecikmesi | tahmin edilen ve ölçülen yol, zaman damgaları | ufku, hız planını, gecikme yönetimini ayarlayın |
| Düzensiz komutlar | düşük S; gürültülü tahmin | \Delta u ve sensör izi | hareket cezasını artırın; tahmin ediciyi/filtreyi iyileştirin |
| Sık sık gevşeklik/sınırlar | uyumsuzluk; marj yok | gevşeklik, aktif kısıtlamalar, bozulma | marj ekleyin, bozulma modeli, daha yumuşak referans |
| Çözüm yok | çelişkili kısıtlamalar | Çözücü durumu ve aktif küme | Uygulanamaz politikayı tanımla; yalnızca izin verilen sınırları yumuşat |
| Son teslim tarihi kaçırıldı | problem çok büyük/değişken | en kötü durum çözüm süresi | modeli/ufku azalt; çözücüyü yapılandır |
PID ve güvenlik ile ilişkisi
Bir MPC döngüsü, hız, tutum veya yörünge referansları vermek için 10-100 Hz'de çalışabilirken, motor sürücüleri veya ros2_control PID döngüleri akım, hız veya konumu daha yüksek bir hızda kapatır. MPC, iç döngünün gerçekte ne sağlayabileceğini bilmelidir: doygunluk, gecikme, zaman aşımı ve izleme sınırları. Optimizasyoncu geç kalırsa veya uygulanamazsa, alt döngü sıfır hız, kontrollü yavaşlama veya tutma gibi tanımlanmış güvenli bir referansa ihtiyaç duyar.
Güvenlik korumaları optimizasyoncudan bağımsız kalmalıdır: acil durdurma, çarpışma tespiti, sert hareket sınırları, aşırı akım/aşırı sıcaklık koruması, hız izleme ve iletişim izleme mekanizmaları. Eksik çözüm, sayısal hata, eski durum, geçersiz referans ve tahminci hatası için bir yanıt tanımlayın. Optimizasyon modelindeki uygulanabilirlik, gerçek dünyadaki güvenlik ile aynı şey değildir.
Mevcut yazılımlar, ürünler ve araştırma örnekleri
MPC, sürekli proses endüstrilerinden araçlara, robotiklere ve enerji yönetimine geçmiştir. Uygulanan bir uygulama, yalnızca bir maliyet fonksiyonu değil, bir çözücü, model tanımlama, durum tahmini, izleme ve son tarih yönetimi içerir. OSQP, açık kaynaklı bir dışbükey karesel programlama çözücüsü ve MPC odaklı materyal yayınlamaktadır. MathWorks'ün MPC genel bakışı, tahmin, kısıtlama ve tekrarlanan optimizasyon yapısını açıklamaktadır. Bunlar birincil uygulama referanslarıdır, ürün onayları değildir.
Robotik tarafında, ros2_control donanım arayüzlerini, kontrolör yaşam döngülerini, eşzamansız güncelleme sorunlarını ve kontrolör zincirleme işlemlerini yönetir. ROS 2'ye bir MPC düğümü eklemek, kendi başına gerçek zamanlı zamanlama, durum/referans zaman damgası hizalaması veya güvenli bağımsız bir alt döngü oluşturmaz. Mevcut araştırmalar arasında doğrusal olmayan MPC, öğrenilmiş dinamikler, dağılımsal olarak sağlam MPC ve ortak algılama-planlama optimizasyonu yer almaktadır; çalışma süresi, açıklanabilirlik, belirsizlik ve güvenlik güvencesi pratik sınırlamalar olarak kalmaktadır.
Uygulama kontrol listesi
-
Durum, giriş, bozulma ve referans için birimleri, çerçeveleri, güncelleme oranlarını, gecikmeyi, tazeliği, ufku N ve hareket ağırlığını S tanımlayın.
-
Sert fiziksel kısıtlamaları kasıtlı olarak yumuşak operasyonel kısıtlamalardan ayırın.
-
En kötü durum çözüm süresini, zaman aşımını, uygulanabilir olmamayı ve sayısal hata geri dönüşünü test edin.
-
Tahminleri, ölçümleri, giriş dizisini, aktif kısıtlamaları, boşluğu ve çözücü durumunu tek bir saat döngüsünde kaydedin.
-
Uyumsuzluk, bozulma, kayma, sensör gecikmesi/kaybı ve iletişim kaybı ekleyin.
-
MPC'nin iç döngü doygunluğunu anladığından ve MPC, ROS 2 veya tahmin başarısız olursa bağımsız durdurma korumasının çalıştığından emin olun.
Simülasyonda önce test edilecek sınır durumları
MPC, simülasyonda çekici yörüngeler üretebilir, bu nedenle yalnızca sıradan koşullar tehlikeli varsayımları gizleyebilir. Ani referans değişikliklerini, sürtünme ve yük değişikliklerini, aktüatör doygunluğunu, gecikmiş veya eksik ölçümleri ve kasıtlı olarak kısa çözücü sürelerini otomatikleştirin. Hangi kısıtlamanın aktif hale geldiğini, güvenli bir geri dönüşe girmek için kaç döngü gerektiğini ve hangi sinyalin kararı haklı çıkardığını kaydedin. Düşük hızda donanıma geçin ve geniş bir marjla çıktı verin ve yalnızca çözücü başarı bayrağı yerine artıkları, doygunluk süresini, boşluğu ve durma mesafesini izleyin.
Optimize edilmiş girdi dizisinin tamamı yürütülüyor mu?
Genellikle yalnızca ilk girdi uygulanır, ardından problem yeni gözlemler kullanılarak tekrar çözülür. Bu, tahminden sapmaları içerir.
Yorumlar
Lütfen önce giriş yapın.
Henüz veri yok.