Atalet#

giriiş#

Beyinde yerleşik bir atalet sensörü bulunur. Bu sensör, beynin nasıl hareket ettiğini veya döndüğünü ölçebilir.

Atalet Sensörü bunu yapmak için iki parça kullanır. Jiroskop, beynin hangi yöne baktığı ve ne kadar döndüğü gibi dönüşü ölçer. İvmeölçer, hızlanma, yavaşlama veya bir kaza sırasında aniden durma gibi hareket değişikliklerini ölçer.

Atalet yöntemleri, dönüşleri izlemek, yön veya dönüş değerlerini sıfırlamak, yuvarlanma, eğim ve sapmayı ölçmek ve ivmeyi raporlamak için kullanılabilir.

Atalet sensörünü kodlamanın birçok yolu vardır. Aşağıda tüm atalet yöntemlerinin listesi bulunmaktadır:

Yönlendirme — Beynin yönünü, dönüşünü veya eğimini ayarlayın.

  • get_heading — Beynin baktığı yönü 0 ile 359 derece arasında döndürür.

  • get_rotation — Beynin ne kadar döndüğünü döndürür.

  • get_yaw — Beynin başlangıç ​​konumundan sola veya sağa ne kadar döndüğünü döndürür.

  • get_roll — Beynin sola veya sağa ne kadar eğik olduğunu döndürür.

  • get_pitch — Beynin ne kadar öne veya geriye doğru eğildiğini döndürür.

  • calibrate — Beynin Atalet Sensörünü Kalibre Eder.

  • reset_heading — Beynin mevcut yönünü 0 dereceye sıfırlar.

  • reset_rotation — Beynin mevcut dönüşünü 0 dereceye sıfırlar.

  • set_heading — Beynin mevcut yönünü yeni bir yön değerine ayarlar.

  • set_rotation — Beynin mevcut dönüşünü yeni bir dönüş değerine ayarlar.

Hareket — Beynin nasıl hareket ettiğini geri döndürün.

  • get_acceleration — Beynin seçilen eksende ne kadar hızlı hızlandığını veya yavaşladığını döndürür.

Oryantasyon#

get_heading#

Bir yön, Beynin baktığı yönü ifade eder ve 0 ile 359 derece arasında ölçülür. get_heading , Beynin mevcut yönünü döndürür.

Başlangıç ​​yönü 0 derecedir. Beyin 359 derecenin ötesine dönerse, yön tekrar 0 dereceye döner.

Usage:
inertial.get_heading()

Parametreler

Tanım

Bu yöntemin parametresi yoktur.

get_rotation#

Dönme, Beynin ne kadar döndüğünü derece cinsinden ölçer. Yönlendirmeden farklı olarak, dönme 359 derecenin üzerine çıkabilir veya 0 derecenin altına düşebilir. Bir projenin başlangıcında, dönme değeri 0 dereceye ayarlanır. get_rotation Beynin mevcut dönme değerini döndürür.

Sağa dönmek dönüş açısını artırır, sola dönmek ise azaltır. Örneğin, sağa iki tam dönüş yapmak 720 derecelik bir dönüşe neden olur. 0 dereceden sola bir tam dönüş yapmak ise -360 derecelik bir dönüşe neden olur.

Usage:
inertial.get_rotation()

Parametreler

Tanım

Bu yöntemin parametresi yoktur.

get_yaw#

Yaw, beynin başlangıç ​​konumundan sola veya sağa ne kadar döndüğünü derece cinsinden ölçer. get_yaw beynin mevcut yaw değerini döndürür.

Sağa dönüş sapma değerini artırırken, sola dönüş sapma değerini azaltır. Sapma, sarmal yön değerini kullanmadan sola ve sağa dönüşü kontrol etmek için kullanışlıdır.

Usage:
inertial.get_yaw()

Parametreler

Tanım

Bu yöntemin parametresi yoktur.

get_roll#

Roll, beynin sola veya sağa doğru ne kadar eğildiğini derece cinsinden ölçer. get_roll beynin mevcut roll değerini döndürür.

Beyin öne doğru bakacak şekilde konumlandırıldığında, sola doğru eğme yuvarlanma değerini artırırken, sağa doğru eğme yuvarlanma değerini azaltır.

Usage:
inertial.get_roll()

Parametreler

Tanım

Bu yöntemin parametresi yoktur.

get_pitch#

Pitch, beynin ileri veya geri doğru ne kadar eğildiğini derece cinsinden ölçer. get_pitch beynin mevcut pitch değerini döndürür.

Beyin öne doğru bakacak şekilde konumlandırıldığında, öne doğru eğilme perde değerini artırır, geriye doğru eğilme ise perde değerini azaltır.

Usage:
inertial.get_pitch()

Parametreler

Tanım

Bu yöntemin parametresi yoktur.

calibrate#

calibrate Beynin Atalet Sensörünü kalibre eder.

Kalibrasyon, atalet sensörünün dönüşleri doğru şekilde ölçmesine yardımcı olur. Kalibrasyon sırasında Brain ünitesini yaklaşık 2 saniye boyunca sabit tutun. Kalibrasyon sırasında Brain ünitesi hareket ederse, yön, dönüş, sapma, yuvarlanma ve eğim değerleri doğru ölçülemeyebilir.

Proje, bir sonraki kod satırı çalıştırılmadan önce kalibrasyon işleminin tamamlanmasını bekleyecektir.

Usage:
inertial.calibrate()

Parametreler

Tanım

Bu yöntemin parametresi yoktur.

reset_heading#

Başlık, Beynin baktığı yönü derece cinsinden ifade eder. reset_heading komutu, Beynin mevcut başlığını 0 dereceye sıfırlar.

Bu yöntem kullanıldıktan sonra, beynin mevcut yönü yeni 0 derece yönü haline gelir.

Usage:
inertial.reset_heading()

Parametreler

Tanım

Bu yöntemin parametresi yoktur.

reset_rotation#

Dönme, beynin ne kadar döndüğünü derece cinsinden ölçer. reset_rotation beynin mevcut dönüşünü 0 dereceye sıfırlar.

Bu yöntem kullanıldıktan sonra, beyin gelecekteki dönüşleri yeni 0 derece dönüş değerinden itibaren takip eder.

Usage:
inertial.reset_rotation()

Parametreler

Tanım

Bu yöntemin parametresi yoktur.

set_heading#

Başlık, Beynin baktığı yönü ifade eder ve 0 ile 359 derece arasında ölçülür. set_heading komutu, Beynin mevcut başlığını yeni bir başlık değerine değiştirir.

Örneğin, Beyin sağa doğru dönmüşse, yönü 0 dereceye ayarlamak, bu sağa dönük pozisyonu yeni 0 derece yapar. Ardından Beyin, bu yeni yöne göre diğer yönleri takip edebilir.

Usage:
inertial.set_heading(heading)

Parametreler

Tanım

heading

Beyin için ayarlanacak başlık değeri (derece cinsinden). Bu değer 0 ile 359 arasında bir tam sayı olabilir.

set_rotation#

Dönme, Beynin ne kadar döndüğünü derece cinsinden ölçer. Yönlendirmeden farklı olarak, dönme 359 derecenin üzerine çıkabilir veya 0 derecenin altına düşebilir. Bir projenin başlangıcında, dönme değeri 0 dereceye ayarlanır. set_rotation komutu, Beynin mevcut dönme değerini yeni bir değere değiştirir.

Örneğin, Beyin sağa doğru iki tam tur atmışsa, dönüş değeri 720 derece olacaktır. Dönüşü 0 dereceye ayarlamak, bu dönüş değerini 720’den 0 dereceye sıfırlayacaktır. Ardından Beyin, bu yeni değere göre dönüşleri takip edebilir.

Usage:
inertial.set_rotation(rotation)

Parametreler

Tanım

rotation

Beyin için ayarlanacak dönüş değeri (derece cinsinden). Bu bir tamsayı olabilir.

Hareket#

get_acceleration#

İvme, beynin ne kadar hızlı hızlandığını veya yavaşladığını gösterir. get_acceleration , seçilen eksende beynin ivmesini -4,0 G ile 4,0 G arasında döndürür.

G ivmeyi ölçmek için kullanılan bir birimdir. 1 G, hareketsiz otururken yerçekiminden hissettiğiniz ivmeye yaklaşık olarak eşittir.

Değer, seçilen eksendeki ivmenin yönüne bağlı olarak pozitif veya negatif olabilir. Eksen seçenekleri X, Yve Z.

Usage:
inertial.get_acceleration(axis)

Parametreler

Tanım

axis

İvmenin ölçüleceği eksen: X, Yveya Z.

# Build Used: Super Code Base 2.0
def main():
    # Display the acceleration after moving.
    drivetrain.set_drive_velocity(100)
    console.print("Resting: ")
    console.print(inertial.get_acceleration(X), precision=2)
    console.new_line()
    wait(1, SECONDS)
    drivetrain.drive_for(FORWARD, 500, MM, wait=False)
    wait(0.20, SECONDS)
    console.print("Startup: ")
    console.print(inertial.get_acceleration(X), precision=2)

# Start threads — Do not delete
start_thread(main)