คุณจะตั้งค่า PID-Control ได้อย่างไรถ้าค่าคงที่เวลาของระบบควบคุมเป็นตัวแปร?


9

คำอธิบายทั่วไปสำหรับตัวควบคุม PID ที่ต่อเนื่องเขียนดังนี้: ที่สุด ค่าของค่าคงที่ ,และสำหรับระบบควบคุมที่กำหนดจะขึ้นอยู่กับค่าคงที่ของเวลาไม่ว่าจะเป็นระบบ\ text {PT} _1หรือระบบ\ text {PT} _2ฯลฯ ...

Y(เสื้อ)=Kพีอี(เสื้อ)+Kผม0เสื้ออี(τ)dτ+Kddอี(เสื้อ)dเสื้อ
KพีKผมKdPT1PT2

คุณจะทำอย่างไรถ้าค่าคงที่เวลาของระบบนั้นเป็นตัวแปร ให้บอกว่ามันแตกต่างกันระหว่างและ ( ) คุณออกแบบค่าคงที่ PID ได้อย่างไรTaTTa<T

คำตอบ:


8

วิธีหนึ่งคือการใช้การควบคุมแบบปรับตัวบางรูปแบบ หากค่าคงที่ในช่วงเวลาของคุณมีขนาดเล็กและเป็นที่รู้จักคุณสามารถใช้สิ่งที่เรียกว่า"การตั้งเวลารับ" ที่คุณกำหนดก่อนส่งค่าคงที่ตลอดเวลาที่คุณต้องติดต่อด้วย (หวังว่ามันจะมี จำกัด ) และใช้ถ้า และ D. มันอาจเป็นเรื่องท้าทายที่จะตรวจสอบให้แน่ใจว่าคุณได้ครอบคลุมความแปรปรวนมากพอที่จะทำให้มั่นใจถึงความเสถียรและประสิทธิภาพผ่านช่วง เรื่องราวความสำเร็จที่ดีสำหรับการกำหนดตารางการบินคือเฮลิคอปเตอร์ Chinook มันสามารถทำได้

หากคุณไม่มีการคาดการณ์ที่เป็นไปได้สำหรับค่าคงที่เวลาที่คุณจะได้รับคุณสามารถดูการใช้การควบคุมการอ้างอิงแบบจำลองอ้างอิง (MRAC) ในรูปแบบการควบคุมนี้คุณมีรูปแบบการอ้างอิง (ระบบในอุดมคติของคุณ) ด้วยตัวควบคุม PID ที่คุณเลือก MRAC ช่วยลดข้อผิดพลาดระหว่างสิ่งที่โรงงานกำลังทำจริงและรูปแบบการอ้างอิงของคุณกำลังทำอะไรอยู่ ด้วยวิธีนี้คุณบังคับให้โรงงานที่กำลังเปลี่ยนแปลงของคุณทำตัวเหมือนโมเดล LTI ของคุณ

หรือคุณอาจลองใช้ Model Identification Adaptive Controller (MIAC) ที่นี่รูปแบบการควบคุมทำการระบุระบบแบบเรียลไทม์และใช้กฎหมายการอัพเดทสำหรับตัวควบคุมของคุณ สิ่งนี้ต้องการทักษะขั้นสูงสุดของสามแนวคิด

เนื่องจากระบบของคุณเปลี่ยนค่าคงที่ของเวลาตลอดเวลาจึงไม่มี LTI อีกต่อไป ซึ่งหมายความว่าคุณต้องได้รับการตั้งเวลา (ค่อนข้างง่ายถ้าคุณรู้ว่าช่วงเวลาคงที่) หรือการระบุระบบพร้อมด้วยกฎหมายการอัพเดทสำหรับ PID ของคุณ


ทำไมไม่ปรับสมดุลเวลาแบบไดนามิกโดยการออกแบบสำหรับการประทับเวลาที่มากขึ้นและทำให้ซอฟต์แวร์เสมือนเรียลไทม์โดยรอระหว่างการทำซ้ำแต่ละครั้งก่อนส่งคำสั่งแอคทูเอเตอร์
GürkanÇetin

@GürkanÇetinซอฟต์แวร์กำลังรออะไรอยู่? คุณสามารถช่วยฉันเข้าใจว่าเกิดอะไรขึ้นเมื่อซอฟต์แวร์มีความล่าช้าในการปรับปรุงการควบคุมหรือไม่
willpower2727

หากฉันเข้าใจอย่างถูกต้องมีการหน่วงเวลาที่ไม่รู้จักในแต่ละลูปของการคำนวณซ้ำ (เช่นเนื่องจากการสื่อสาร I / O หรืองาน CPU อื่น ๆ ) นี่เป็นปัญหาทั่วไปของเป้าหมายที่ไม่ได้ตามเวลาจริง (OS) ดังนั้นการปรับตัวควบคุมสำหรับ delta_t (ความยาว) ที่กำหนดไว้ล่วงหน้า (พูด 100msec) และจากนั้นในแต่ละการวนซ้ำพยายามปรับวนลูปทั้งหมดตามเวลาเป็น delta_t นี้ (สมมติว่าอัลกอริทึมควบคุมเสร็จสิ้นด้วย msec 80 วินาทีรอ 20 มิลลิวินาทีพิเศษ ) เพื่อส่งคำสั่งควบคุม; สามารถใช้งานได้หากเป็นที่ทราบกันว่างานอื่น ๆ ทั้งหมดใช้เวลาน้อยกว่า 100ms (ลบด้วยเวลาคำนวณกฎหมายควบคุม)
GürkanÇetin

@GürkanÇetinถ้าฉันเข้าใจคำถามเดิมอย่างถูกต้องคำถามนั้นเกี่ยวกับวิธีการควบคุมเมื่อลักษณะทางกายภาพของพืชเปลี่ยนแปลงไปตามกาลเวลา (เช่นจรวดสูญเสียมวลเมื่อเวลาผ่านไป) ไม่ใช่วิธีจัดการกับเวลาปฏิบัติการแบบวนรอบ ฉันคิดว่าข้อเสนอแนะของคุณอาจถูกต้องในแง่ของการจัดการกับระบบปฏิบัติการเวลาจริงที่ใช้ตัวควบคุม
willpower2727

โอ้ใช่. ฉันเข้าใจผิดคำถาม ในกรณีนี้หากโรงงานมีการเปลี่ยนแปลงภายในเวลา (ทันทีหรือค่อยๆ) ฉันจะบอกว่าการกำหนดค่าใหม่เป็นไปได้อีกอย่างหนึ่ง แน่นอนใช้งานได้เฉพาะในกรณีที่คุณรู้การเปลี่ยนแปลงของแบบจำลองการเปลี่ยนแปลง เช่นการสูญเสียมวลการใช้เชื้อเพลิงการสกัด / การร่นล้อเกียร์ ฯลฯ
GürkanÇetin
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.