Jerk ve Buffer Mode

Kullanıcı avatarı
Ahmet
Mesajlar: 782
Kayıt: 07 Mar 2018, 14:03
İletişim:
Durum: Çevrimdışı

Jerk ve Buffer Mode

Mesaj gönderen Ahmet »

Resimde işaretlediğim JERK ve Buffer Mode tam olarak ne işe yarıyor?
Jerk ve Buffer Mode.jpg
Bu mesaja eklenen dosyaları görüntülemek için gerekli izinlere sahip değilsiniz.
Günün Adamı Olmaya Çalışma,
Hakikatin Adamı Olmaya Çalış.
Unutma!!!!!
Gün Değişir ama Hakikat Asla Değişmez....
............................ Mevlana Celaleddin-i Rumi........
Kullanıcı avatarı
yasinakar
Mesajlar: 211
Kayıt: 06 Nis 2018, 08:13
İletişim:
Durum: Çevrimdışı

Re: Jerk ve Buffer Mode

Mesaj gönderen yasinakar »

MC_GearIn

FB/FC
Explanation
Applicable model

FB
MC_GearIn is used for establishing the electronic gear relationship between two axes.
DVP15MC11T

DVP15MC11T-06

DVP50MC11T DVP50MC11T-06


说明: 说明: C:\Users\ella.wang\Documents\WinCHM Projects\Project14\MC_GearIn(电子齿轮耦合指令).files\image002.png

? Input Parameters

Parameter name
Function
Data type
Valid range

(Default)
Validation timing

Master
Specify the number of the master axis which is to be controlled by the instruction
USINT
Refer to "Axis No. Ranges that Controllers Correspond to".

(The variable value must be set)
When Execute changes from FALSE to TRUE

Slave
Specify the number of the slave axis which is to be controlled by the instruction
USINT
Refer to "Axis No. Ranges that Controllers Correspond to".

(The variable value must be set)
When Execute changes from FALSE to TRUE

Execute
The instruction is executed when Execute changes from FALSE to TRUE.
BOOL
TRUE or FALSE (FALSE)
-

ContinuousUpdate
Reserved
-
-
-

RatioNumerator
Gear ratio Numerator
LREAL
Positive number and negative number

(The variable value must be set)
When Execute changes from FALSE to TRUE

RatioDenominator
Gear ratio Denominator
LREAL
Positive number

(The variable value must be set)
When Execute changes from FALSE to TRUE

MasterValueSource
Command source selection

0: Command position of the master axis which the slave axis follows

1: Actual position of the master axis which the slave axis follows
MC_Source
0:mcSetValue

1:mcActualValue

(0)
When Execute changes from FALSE to TRUE

Acceleration
Specify the target acceleration.

(Unit: Unit/s2)
LREAL
Positive number

(The variable value must be set)
When Execute changes from FALSE to TRUE

Deceleration
Specify the target deceleration.

(Unit: Unit/s2)
LREAL
Positive number

(The variable value must be set)
When Execute changes from FALSE to TRUE

Jerk
Specify the change rate of target acceleration and deceleration.

(Unit: Unit/s3)
LREAL
Positive number

(The variable value must be set)
When Execute changes from FALSE to TRUE

BufferMode
Specify the behavior when executing two instructions.

0: Aborting

1: Buffered
MC_Buffer_
Mode
0 : mcAborting

1 : mcBuffered

(0)
When Execute changes from FALSE to TRUE


Notes:

1. The execution of MC_GearIn is started when Execute changes from FALSE to TRUE. No matter whether the execution of the instruction is completed or not, the instruction can be re-executed when Execute changes from FALSE to TRUE once again. And meanwhile only Velocity, Acceleration, Deceleration and Jerk parameters will be effective again.

2. The slave axis specified by MC_GearIn instruction can execute other motion instruction while MC_GearIn is being executed. While other motion instruction aborts the MC_GearIn instruction, the gear relationship between the master axis and slave axis will disconnected. MC_Halt or MC_Stop can abort the motion of the slave axis.

3. Refer to "Relation among Velocity, Acceleration and Jerk" for the relation among Position, Velocity, Acceleration and Jerk.

4. Refer to Introduction of BufferMode for details on BufferMode.



? Output Parameters

Parameter name
Function
Data type
Valid range

InGear
TRUE when the slave axis reaches the synchronous state.
BOOL
TRUE / FALSE

Busy
TRUE when the instruction is being executed.
BOOL
TRUE / FALSE

Active
TRUE when the axis is being controlled.
BOOL
TRUE / FALSE

CommandAborted
TRUE when the instruction is aborted.
BOOL
TRUE / FALSE

Error
TRUE when there is an error in the execution of the instruction.
BOOL
TRUE / FALSE

ErrorID
Contains the error code when an error occurs. Please refer to “Table of Error IDs in Instructions” for explanation.
WORD


? Output Update Timing

Name
Timing for changing to TRUE
Timing for changing to FALSE

InGear
? When the slave axis enters the synchronous state.
? When CommandAborted changes to TRUE

? When Error changes to TRUE

? InGear will change to FALSE immediately when the input parameter is modified after the synchronous state is reached and Execute changes from FALSE to TRUE once more.

? InGear will change to FALSE immediately when the input parameter is not modified after the instruction execution is finished and Execute changes from FALSE to TRUE once more. And in the next period, InGear changes to TRUE.

Busy
? When Execute changes to TRUE
? When CommandAborted changes to TRUE

? When Error changes to TRUE

Active
? When the axis starts being controlled by the instruction
? When CommandAborted changes to TRUE

? When Error changes to TRUE

CommandAborted


? When the instruction execution is aborted by other motion instruction
? When Execute changes from TRUE to FALSE

? CommandAborted is set to TRUE when the instruction is aborted by other instruction after Execute changes from TRUE to FALSE in the course of the instruction execution. One period later, CommandAborted changes to FALSE.

Error
? When an error occurs in the instruction execution or the input parameters for the instruction are illegal
? When Execute changes from TRUE to FALSE


? Output Update Timing Chart

说明: 说明: C:\Users\ella.wang\Documents\WinCHM Projects\Project14\MC_GearIn(电子齿轮耦合指令).files\image004.png

Case 1: Busy changes to TRUE as Execute changes from FALSE to TRUE. One period later, Active changes to TRUE. When the synchronous state is reached, InGear changes to TRUE and meanwhile Busy and Active remain TRUE.

Case 2: When Execute changes to TRUE and the slave axis is controlled by other instruction, MC_GearIn instruction is aborted by other instruction and CommandAborted changes to TRUE. Meanwhile Busy and Active change to FALSE. When Execute changes from TRUE to FALSE, CommandAborted changes to FALSE.

Case 3: When Execute changes from FALSE to TRUE and an error such as a parameter mistake occurs, Error changes to TRUE and ErrorID shows corresponding error codes. Meanwhile InGear, Busy and Active change to FALSE. As Execute changes from TRUE to FALSE, Error changes to FALSE.

Case 4: After Execute changes from TRUE to FALSE in the process of execution of MC_GearIn, InGear changes to TRUE and meanwhile Busy and Active remain TRUE.

? Function

1. MC_GearIn is used for establishing an electronic gear relationship between two axes. After the MC_GearIn instruction is executed, the slave axis performs the gear operation with the master axis according to the parameters, RatioNumerator, RatioDenominator, Acceleration, Deceleration, Jerk and BufferMode. The master axis can be a real axis, virtual axis or encoder axis. The salve axis can be a real axis or virtual axis.

2. In the instruction execution, the slave axis need be enabled and the master axis can be enabled or disabled.

3. If the MC_GearIn instruction is executed when the e-gear relationship between two axes has not been built yet, the velocity of the slave axis will reach the target velocity according to the values of RatioNumerator, RatioDenomenator, Acceleration, Deceleration and Jerk specified by the instruction.

说明: 说明: C:\Users\ella.wang\Documents\WinCHM Projects\Project14\MC_GearIn(电子齿轮耦合指令).files\image006.png

After the e-gear relationship between two axes has been built (when InGear of the instruction changes to TRUE), the relationship among the velocity of the slave axis, gear ratio numerator, gear ratio denominator and the velocity of the master axis is shown as below.

说明: 说明: C:\Users\ella.wang\Documents\WinCHM Projects\Project14\MC_GearIn(电子齿轮耦合指令).files\image008.png

4. E-gear ratio

说明: 说明: C:\Users\ella.wang\Documents\WinCHM Projects\Project14\MC_GearIn(电子齿轮耦合指令).files\image010.png

If the e-gear ratio is a positive number, the motion directions of the slave axis and master axis are same.

If the e-gear ratio is a negative number, the motion directions of the slave axis and master axis are opposite.

? Programming Example

Below is the example of execution of MC_GearIn instructions.

1. The variable table and program

Variable name
Data type
Initial value

Vel
MC_MoveVelocity


Axis1
USINT
1

Axis2
USINT
2

Vel_Ex
BOOL
FALSE

Vel_Dir
MC_DIRECTION
1

Vel_BM
MC_Buffer_Mode
0

Vel_Invel
BOOL


Vel_Bsy
BOOL


Vel_Act
BOOL


Vel_Abt
BOOL


Vel_Err
BOOL


Vel_ErrID
WORD


GearIn1
MC_GearIn


GearIn1_Ex
BOOL
FALSE

GearIn1_BM
MC_Buffer_Mode
0

GearIn1_InGear
BOOL


GearIn1_Bsy
BOOL


GearIn1_Act
BOOL


GearIn1_Abt
BOOL


GearIn1_Err
BOOL


GearIn1_ErrID
WORD


GearIn2
MC_GearIn


GearIn2_Ex
BOOL
FALSE

GearIn2_BM
MC_Buffer_Mode
0

GearIn2_InGear
BOOL


GearIn2_Bsy
BOOL


GearIn2_Act
BOOL


GearIn2_Abt
BOOL


GearIn2_Err
BOOL


GearIn2_ErrID
WORD


说明: 说明: C:\Users\ella.wang\Documents\WinCHM Projects\Project14\MC_GearIn(电子齿轮耦合指令).files\image012.png

2. Motion Curve and Timing Charts:

说明: 说明: C:\Users\ella.wang\Documents\WinCHM Projects\Project14\MC_GearIn(电子齿轮耦合指令).files\image014.png

? In GearIn1, the values of RatioNumerator and RatioDenomenator are both 1. GearIn1_Ex changes from FALSE to TRUE and meanwhile GearIn1 _Bsy changes to TRUE. One period later, GearIn1_InGear changes to TRUE and the e-gear relationship between the master axis and the slave axis is built.

? Vel_Ex changes from FALSE to TRUE after the e-gear relationship between the master axis and slave axis is built. One period later, Vel_Act changes to TRUE, the master axis performs the velocity instruction and the slave axis follows the master axis for motion.

? In GearIn2, the values of RatioNumerator and RatioDenomenator are 2 and 1 respectively. GearIn2_Ex changes from FALSE to TRUE and meanwhile GearIn2 _Bsy changes to TRUE. One period later, GearIn2_Act and GearIn1_Abt change to TRUE and the slave axis gets to the target velocity based on the values of RatioNumberator, Ratio Denomenator, MasterValueSource, Acceleration, Jerk and BufferMode specified by the GearIn2 instruction. Since the values of RatioNumerator and RatioDenomenator in GearIn2 are 2 and 1 respectively, the target velocity of the slave axis is twice that of the master axis. When GearIn2_InGear changes to TRUE, the velocity of the slave axis will be twice that of the
Kullanıcı avatarı
Ahmet
Mesajlar: 782
Kayıt: 07 Mar 2018, 14:03
İletişim:
Durum: Çevrimdışı

Re: Jerk ve Buffer Mode

Mesaj gönderen Ahmet »

Güzel bir copy/paste olmuş.
Günün Adamı Olmaya Çalışma,
Hakikatin Adamı Olmaya Çalış.
Unutma!!!!!
Gün Değişir ama Hakikat Asla Değişmez....
............................ Mevlana Celaleddin-i Rumi........
Kullanıcı avatarı
Uğur
Mesaj Panosu Yöneticisi
Mesajlar: 8908
Kayıt: 06 Mar 2018, 10:37
Konum: İstanbul
İletişim:
Durum: Çevrimdışı

Re: Jerk ve Buffer Mode

Mesaj gönderen Uğur »

Özetle;

Jerk --> Kaba tabirle ivmenin ivmesi olarak geçer. Hızlanma ve yavaşlama zamanının artış miktarının belirlendiği parametredir.
Buffer Mode --> Ardışık pozisyon kontrol işlemlerinde buffer mode yok ise yada kullanılmaz ise birinci pozisyon tamamlanır motor devri sıfıra düşer ve ardından tekrar sıfırdan 2. pozisyona başlar. Fakat buffer mode ile önden okuma işlemini gerekleştirdiği için birinci ve ikinci pozisyonun hızlanma ve yavaşlama zamanlarını orta noktada değerlendirmeye tabi tutarak birinci pozisyonun tamamlanmasını ikinci pozisyonun çalışma hızına denkleştirerek böylelikle kesiksiz çalışmayı sağlar.
Uğur Birdal - Technical Support Team Manager - DELTA Electronics Turkiye

Bildirimler İçin Whatsapp Kanalımıza Katılın
Whatsapp Kanal

https://www.linkedin.com/in/ugurbirdal
Kullanıcı avatarı
Ahmet
Mesajlar: 782
Kayıt: 07 Mar 2018, 14:03
İletişim:
Durum: Çevrimdışı

Re: Jerk ve Buffer Mode

Mesaj gönderen Ahmet »

Uğur Bey Teşekkür ederim. Sanırım 10MC versiyonlarında bu özellikler ypok değil mi?
Günün Adamı Olmaya Çalışma,
Hakikatin Adamı Olmaya Çalış.
Unutma!!!!!
Gün Değişir ama Hakikat Asla Değişmez....
............................ Mevlana Celaleddin-i Rumi........
Kullanıcı avatarı
Uğur
Mesaj Panosu Yöneticisi
Mesajlar: 8908
Kayıt: 06 Mar 2018, 10:37
Konum: İstanbul
İletişim:
Durum: Çevrimdışı

Re: Jerk ve Buffer Mode

Mesaj gönderen Uğur »

Malesef yok.
Uğur Birdal - Technical Support Team Manager - DELTA Electronics Turkiye

Bildirimler İçin Whatsapp Kanalımıza Katılın
Whatsapp Kanal

https://www.linkedin.com/in/ugurbirdal
Kullanıcı avatarı
Ahmet
Mesajlar: 782
Kayıt: 07 Mar 2018, 14:03
İletişim:
Durum: Çevrimdışı

Re: Jerk ve Buffer Mode

Mesaj gönderen Ahmet »

Teşekkür ederim.
Günün Adamı Olmaya Çalışma,
Hakikatin Adamı Olmaya Çalış.
Unutma!!!!!
Gün Değişir ama Hakikat Asla Değişmez....
............................ Mevlana Celaleddin-i Rumi........
Kullanıcı avatarı
Ahmet
Mesajlar: 782
Kayıt: 07 Mar 2018, 14:03
İletişim:
Durum: Çevrimdışı

Re: Jerk ve Buffer Mode

Mesaj gönderen Ahmet »

Uğur Bey; 7Merhabalar.
15MC ve A2 servo ile yapmaya çalıştığım uygulamada Şöyle bir sıkıntı yaşıyorum.
Resimde görülen DMC_MoveLineerAbsolute bloğunda Buffer moder seçeneğini "Buffering" seçtiğimde pozisyonlar arasında ilerlerken her poz,isyon sonunsa hız sıfırlanıyor ve bir sonraki pozisyona öyle gidiyor.
Bende buffer mode seçeneiğini Blending provious seçiyorum (mecburen bu iki seçenek dışlınka komut kabul etmiyor) bu defada harketlerden hızlı olan kendinden öçnceki hareket hızı yavaş olanın hızında işliyor buda çalışmada sıkıntıya neden oluyor.
Bana her pozisyonda kendi hızında çalışsın ama pozisyonlar arasında geçiş yaparken durmamması gerekiyor.. Bu sorunun çözümü için öneriniz ne olacaktır?
Teşekkür ederim.
11.jpg
22.jpg
Bu mesaja eklenen dosyaları görüntülemek için gerekli izinlere sahip değilsiniz.
Günün Adamı Olmaya Çalışma,
Hakikatin Adamı Olmaya Çalış.
Unutma!!!!!
Gün Değişir ama Hakikat Asla Değişmez....
............................ Mevlana Celaleddin-i Rumi........
Kullanıcı avatarı
Uğur
Mesaj Panosu Yöneticisi
Mesajlar: 8908
Kayıt: 06 Mar 2018, 10:37
Konum: İstanbul
İletişim:
Durum: Çevrimdışı

Re: Jerk ve Buffer Mode

Mesaj gönderen Uğur »

MC_Buffered iki pozisyonu birleşitirip pozisyonlar arasını bağımsız değerlendirerek geçişte durmanın olacağı geçiştir. Burada hız birleştirmesi yapılacak ise Blending seçilmelidir, blending için seçilecek duruma göre çalışma farklılık gösterir.
Bu durumda low blendig seçildiği zaman hızı düşük olanın pozisyonunu tam işlerken yüksek olanın içerisinde geçiş rampasını icra eder, Blending previus için ilk pozisyonu tamamen işlerken hız geçişi yaptığı rampayı ikincinin pozisyonunda gerçekleştirir gibi farklılıkları vardır.
Uğur Birdal - Technical Support Team Manager - DELTA Electronics Turkiye

Bildirimler İçin Whatsapp Kanalımıza Katılın
Whatsapp Kanal

https://www.linkedin.com/in/ugurbirdal
Kullanıcı avatarı
Ahmet
Mesajlar: 782
Kayıt: 07 Mar 2018, 14:03
İletişim:
Durum: Çevrimdışı

Re: Jerk ve Buffer Mode

Mesaj gönderen Ahmet »

tmm bunlarda hemfikiriz.
Sıkıntı şudurki bu komut sadece BlendingProvious seçeneğini kabul ediyor diğerlerinden birisini seçtiğimde blok direk hataya düşüyor ve help dosyasından komut yapısıyla ilgili None,Buffered,BlendingProvious bu üç seçeneği desteklediği yazıyor. Bu durumda ben bu komutu nasıl istediğim şekilde kullanabilirim?
Yada şöyle sorayım.
Her komut belirtilen pozisyona giderken kendi Velocity değerindeki hıza uysun ve komutlar arası geçiştede durmadan geçmesi için uygun olan komut ne şekilde olmalıdır?
Günün Adamı Olmaya Çalışma,
Hakikatin Adamı Olmaya Çalış.
Unutma!!!!!
Gün Değişir ama Hakikat Asla Değişmez....
............................ Mevlana Celaleddin-i Rumi........
Cevapla

“MC Forum” sayfasına dön