Motor ve Motor Grubu#
giriiş#
Motorlar ve motor grupları, bir robotun parçalarının nasıl hareket ettiğini kontrol eder. motor nesnesi, yapılandırılmış bir IQ Akıllı Motoru kontrol ederken, motor_group nesnesi, birden fazla yapılandırılmış IQ Akıllı Motoru birlikte kontrol ederek eş zamanlı olarak hareket etmelerini sağlar. Motorlar ve motor grupları, bir kolu kaldırmak, bir pençeyi döndürmek, bir tekerleği döndürmek veya bir yapının başka bir parçasını hareket ettirmek için kullanılabilir. İki motor, tüm robotu hareket ettirmek ve döndürmek için bir tahrik sistemi olarak birlikte çalışabilir.
Her motor veya motor grubu, Aygıtlar penceresinde yapılandırılır. Sürüme bağlı olarak, motor ve motor grubu adları değişebilir. Bu sayfada örnek adlar olarak Motor1 ve MotorGroup1 kullanılmıştır. Bunları gerektiğinde kendi yapılandırdığınız adlarla değiştirin.
Varsayılan olarak, forward motoru saat yönünün tersine, reverse ise motoru saat yönünde döndürür. Bir motor geri yönde çalışacak şekilde ayarlanırsa, bu yönler değiştirilir.
Motor#
Class Constructors#
1 — Belirtilen Akıllı Bağlantı Noktasına bağlı IQ Akıllı Motor için
motornesnesi oluşturur. Motor otomatik olarak algılanan dahiligearSettingkullanır.motor( int32_t index );
2 — Belirtilen Akıllı Bağlantı Noktasında
motornesnesi oluşturur ve isteğe bağlı olarak yönünü tersine çevirir. Motor otomatik olarak algılanan dahiligearSettingkullanır.motor( int32_t index, bool reverse );
3 — Belirtilen Akıllı Bağlantı Noktasında, belirtilen
gearSettingilemotornesnesi oluşturur.motor( int32_t index, gearSetting gears );
4 — Belirtilen Akıllı Bağlantı Noktasında, belirtilen
gearSettingve isteğe bağlı ters yöndemotornesnesi oluşturur.motor( int32_t index, gearSetting gears, bool reverse );
Class Destructor#
motor nesnesini yok eder ve ilgili kaynakları serbest bırakır.
~motor();
Parameters#
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Motorun bağlı olduğu Akıllı Bağlantı Noktası, |
|
|
Motorun dönüş yönünün tersine çevrilip çevrilmeyeceğini ayarlar:
|
|
|
Dahili dişli kartuşunun oranını belirtir.
|
Notes#
Dişli ayarı, motora takılı olan fiziksel kartuşla eşleşmelidir.
Example#
// Create the motor instance in Smart Port 1
motor LeftMotor = motor(PORT1);
// Creates the motor instance with different settings
motor RightMotor = motor(
PORT2, // Smart Port 2
ratio2_1, // Gear ratio is 2:1
true);
Motor Grubu#
Class Constructors#
motor_group( motor &m1, Args&... m2 );
Class Destructor#
motor_group nesnesini yok eder ve ilgili kaynakları serbest bırakır.
~motor_group();
Parameters#
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Gruba eklenen ilk motor. |
|
|
Gruba ilave motorlar eklendi. Bir motor grubunda en fazla dört motor bulunabilir. |
Example#
// Create individual motor instances
motor LeftMotor = motor(PORT1);
motor RightMotor = motor(PORT2);
// Create a motor group with both motors
motor_group DriveMotors = motor_group(LeftMotor, RightMotor);
Üye Fonksiyonları#
Motorları ve motor gruplarını kodlamanın birçok yolu vardır. Aşağıda motor ve motor_group üye fonksiyonlarının tümünün listesi bulunmaktadır:
İşlemler — Motorları ve motor gruplarını durdurun ve döndürün.
spin— Bir motoru veya motor grubunu sonsuza dek ileri veya geri yönde döndürür.spinFor— Bir motoru veya motor grubunu belirli bir mesafe veya süre boyunca döndürür.spinToPosition— Bir motoru veya motor grubunu belirli bir konuma döndürür.stop— Bir motorun veya motor grubunun dönmesini durdurur.
Değiştiriciler — Motor ve motor grubu ayarlarını düzenleyin.
setVelocity— Bir motora veya motor grubuna ne kadar hızlı döneceğini söyler.setMaxTorque— Bir motorun veya motor grubunun dönerken ne kadar sert itmesine izin verildiğini ayarlar.setPosition— Motorun veya motor grubunun mevcut konumunu yeni bir değere değiştirir.setStopping— Bir motorun veya motor grubunun hareket etmeyi nasıl durduracağını ayarlar: frenleme, serbest sürüş veya tutma yoluyla.setTimeout— Bir motorun veya motor grubunun bir hareketi bitirmek için ne kadar süre deneyeceğini ayarlar.
Getter’lar — Motor ve motor grubu durumunu kontrol edin.
isDone— Motorun veya motor grubunun hareketinin tamamlanıp tamamlanmadığını Boolean değer olarak döndürür.isSpinning— Motorun veya motor grubunun dönüp dönmediğini Boolean değer olarak döndürür.position— Motorun veya motor grubunun mevcut konumunu döndürür.velocity— Motorun veya motor grubunun ne kadar hızlı döndüğünü döndürür.current— Motorun veya motor grubunun ne kadar elektrik akımı kullandığını döndürür.power— Motorun veya motor grubunun ne kadar güç kullandığını döndürür.torque— Motorun veya motor grubunun ne kadar tork kullandığını döndürür.efficiency— Motorun veya motor grubunun gücü ne kadar verimli kullandığını döndürür.temperature— Motorun veya motor grubunun sıcaklığını döndürür.voltage— Motora veya motor grubuna sağlanan elektrik voltajını döndürür.direction— Motorun veya motor grubunun dönme yönünü döndürür.installed— Motorun veya motor grubunun Beyne bağlı olup olmadığını döndürür.count— Bir motor grubundaki motor sayısını döndürür.
motor veya motor_group üye fonksiyonlarından herhangi birini çağırmadan önce, aşağıda gösterildiği gibi bir örnek oluşturulmalıdır:
/* This constructor is required when using VS Code.
Motor and Motor Group configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */
// Create the motor instance in Smart Port 1
motor Motor1 = motor(PORT1);
Eylemler#
spin#
spin bir motoru veya motor grubunu sonsuza kadar ileri veya geri yönde döndürür. Motor veya motor grubu, farklı bir yönde dönme veya durma gibi başka bir işlem verilene kadar dönmeye devam edecektir.
1 — Mevcut yapılandırılmış motor hızını kullanarak motoru veya motor grubunu döndürür.
void spin( directionType dir );
2 — Motoru veya motor grubunu belirtilen hızda döndürür.
void spin( directionType dir, double velocity, velocityUnits units );
Parameters3 — Belirtilen voltajı kullanarak motoru veya motor grubunu döndürür.
void spin( directionType dir, double voltage, voltageUnits units );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Motorun veya motor grubunun dönüş yönü: |
|
|
The velocity to spin with from 0% to 100% when using |
|
|
Hızı temsil etmek için kullanılan birim:
|
|
|
Döndürme için gereken voltaj. Negatif bir değer, verilen |
|
|
Gerilimi temsil etmek için kullanılan birim:
|
Bu fonksiyon bir değer döndürmez.
NotesBu fonksiyon bekleme gerektirmez ve çağrıdan hemen sonra proje çalışmaya devam eder.
Motor veya motor grubu,
stopçağrılana veya başka bir hareket fonksiyonu yürütülene kadar dönmeye devam edecektir.isDoneveisSpinninggibi fonksiyonlar, hedef tabanlı hareket kullanmadığı için (birrotationveyatimeparametresi olmadığı için)spiniçin geçerli değildir.
// Spin forward, then stop
Motor1.spin(forward);
wait(1, seconds);
Motor1.stop();
spinFor#
spinFor komutu, bir motoru veya motor grubunu belirli bir mesafe veya süre boyunca döndürür. Döndürme tabanlı bir dönüş, motorun veya motor grubunun mevcut konumuna göre belirlenir. Varsayılan olarak, proje bir sonraki kod satırı çalışmadan önce motorun veya motor grubunun dönmesini bekler.
1 — Fonksiyon çağrısında belirtilen hızda belirli bir mesafe boyunca döner.
bool spinFor( double rotation, rotationUnits units, double velocity, velocityUnits units_v, bool waitForCompletion = true );
2 — Yön parametresini kabul eder ve fonksiyon çağrısında belirtilen hızda belirli bir mesafe boyunca döner.
bool spinFor( directionType dir, double rotation, rotationUnits units, double velocity, velocityUnits units_v, bool waitForCompletion = true );
3 — Mevcut yapılandırılmış motor hızı kullanılarak belirli bir mesafe boyunca döner.
bool spinFor( double rotation, rotationUnits units, bool waitForCompletion = true );
4 — Bir yön parametresi kabul eder ve şu anda yapılandırılmış motor hızı kullanılarak belirli bir mesafe boyunca döner.
bool spinFor( directionType dir, double rotation, rotationUnits units, bool waitForCompletion = true );
5 — Fonksiyon çağrısında belirtilen hızda belirli bir süre boyunca döner.
bool spinFor( double time, timeUnits units, double velocity, velocityUnits units_v );
6 — Yön parametresini kabul eder ve fonksiyon çağrısında belirtilen hızda belirli bir süre boyunca döner.
bool spinFor( directionType dir, double time, timeUnits units, double velocity, velocityUnits units_v );
7 — şu anda yapılandırılmış motor hızı kullanılarak belirli bir süre boyunca döner.
bool spinFor( double time, timeUnits units );
Parameters8 — Bir yön parametresi kabul eder ve şu anda yapılandırılmış motor hızı kullanılarak belirli bir süre boyunca döner.
bool spinFor( directionType dir, double time, timeUnits units );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Motorun veya motor grubunun dönüş yönü: |
|
|
Motorun veya motor grubunun dönme mesafesi. |
|
|
The rotation unit:
|
|
|
Motorun veya motor grubunun dönme süresi. |
|
|
The unit of time:
|
|
|
The velocity to spin with from 0% to 100% when using |
|
|
Hızı temsil etmek için kullanılan birim
|
|
|
|
Motorun veya motor grubunun hedef değere ulaşıp ulaşmadığını gösteren bir Boolean değeri döndürür.
true— The motor or motor group reached the target value.false— The motor or motor group was not able to reach the target value orwaitForCompletionis set tofalse.
spinFordevam ederken başka bir motor hareket fonksiyonunun (örneğinspinveyastop) yürütülmesi mevcut hareketi kesintiye uğratacaktır.Çünkü
spinForhedef tabanlıdır (rotationveyatimeparametresini kullanır),isDoneveisSpinninggibi fonksiyonlarspinForile çalışır.
// Spin 1 turn fast, then 1 turn slow
Motor1.spinFor(forward, 1, turns, true);
Motor1.spinFor(reverse, 1, turns, 20, velocityUnits::pct, true);
spinToPosition#
spinToPosition , bir motoru veya motor grubunu belirli bir konuma döndürür.
Bir motorun veya motor grubunun konumu, degrees veya turnscinsinden ölçülen ne kadar döndüğünü gösterir. Bir tur 360 dereceye eşittir. Bir projenin başlangıcında, motor veya motor grubunun konumu 0 dereceye ayarlanır. Motor veya motor grubunun konumu ayrıca setPosition fonksiyonu kullanılarak da ayarlanabilir.
Pozisyon değerleri mutlaktır. Bu, dönüş yönünün motorun veya motor grubunun mevcut konumuna bağlı olduğu anlamına gelir.
Örneğin, motor veya motor grubu 0 dereceden başlayıp 720 dereceye kadar dönerse, iki tur ileri dönecektir. Daha sonra 360 dereceye kadar dönerse, 360, 720’den küçük olduğu için bir tur geri dönecektir.
Available Functions1 — Fonksiyon çağrısında belirtilen hızda belirli bir konuma döner.
bool spinToPosition( double rotation, rotationUnits units, double velocity, velocityUnits units_v, bool waitForCompletion = true );
Parameters2 — Mevcut yapılandırılmış motor hızı kullanılarak belirli bir konuma döner.
bool spinToPosition( double rotation, rotationUnits units, bool waitForCompletion = true );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Motorun veya motor grubunun döneceği konum değeri. |
|
|
The rotation unit:
|
|
|
The velocity to spin with from 0% to 100% when using |
|
|
Hızı temsil etmek için kullanılan birim
|
|
|
|
Motorun veya motor grubunun istenen hedef tabanlı hareketi başlatıp başlatmadığını gösteren bir Boolean değeri döndürür.
true— The motor or motor group begins the requested target-based movement.false— The call fails orwaitForCompletionis set tofalse.
spinToPositionişlemi devam ederken başka bir motor hareket fonksiyonunun (örneğinspinveyaspinFor) yürütülmesi mevcut hareketi kesintiye uğratacaktır.Çünkü
spinToPositionhedef tabanlıdır (rotationparametresini kullanır),isDoneveisSpinninggibi fonksiyonlarspinToPositionile çalışır.
// Spin forward, then go to 90°
Motor1.spin(forward);
wait(1, seconds);
Motor1.spinToPosition(90, degrees);
stop#
stop durdurma, bir motorun veya motor grubunun dönmesini durdurur.
1 — Mevcut yapılandırılmış fren modu kullanılarak motoru veya motor grubunu durdurur.
void stop();
Parameters2 — Fonksiyon çağrısında belirtilen fren modunu kullanarak motoru veya motor grubunu durdurur.
void stop( brakeType mode );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
İsteğe bağlı. Motorun veya motor grubunun nasıl duracağı:
|
Bu fonksiyon bir değer döndürmez.
Notesstopkomutunu çağırmak, mevcut tüm motor veya motor grubu hareketlerini anında durdurur.Eğer fren modu belirtilmemişse, motor veya motor grubu şu anda yapılandırılmış fren modunu kullanır.
stopherhangi bir aktif hedef tabanlı hareketi (örneğinspinForveyaspinToPosition) kesintiye uğratır.
// Spin and coast to a stop
Motor1.setVelocity(100, percent);
Motor1.spin(forward);
wait(1, seconds);
Motor1.stop(coast);
Mutatörler#
setVelocity#
setVelocity , bir motora veya motor grubuna ne kadar hızlı döneceğini söyler. Daha yüksek bir yüzde, motorun veya motor grubunun daha hızlı dönmesini, daha düşük bir yüzde ise daha yavaş dönmesini sağlar.
Her proje, her bir motorun veya motor grubunun varsayılan olarak %50 hızda dönmesiyle başlar.
Not: Daha yüksek hız, motorun veya motor grubunun daha hızlı dönmesini sağlar, ancak hassasiyeti azaltabilir. Daha düşük hız ise motorun veya motor grubunun daha yavaş dönmesini sağlar, ancak hassasiyeti artırabilir.
Available Functionsvoid setVelocity(
double velocity,
velocityUnits units );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
The velocity to spin with from 0% to 100% when using |
|
|
Hızı temsil etmek için kullanılan birim
|
Bu fonksiyon bir değer döndürmez.
NotesHızı açıkça belirtmeyen sonraki herhangi bir motor hareket fonksiyonu (örneğin
spin,spinForveyaspinToPosition) bu değeri kullanacaktır.
// Try default, then slow, then fast
Motor1.spinFor(forward, 180, degrees);
wait(1, seconds);
Motor1.setVelocity(20, percent);
Motor1.spinFor(reverse, 180, degrees);
wait(1, seconds);
Motor1.setVelocity(100, percent);
Motor1.spinFor(forward, 180, degrees);
setMaxTorque#
Tork, bir motorun veya motor grubunun dönerken ne kadar kuvvet uygulayabileceğini veya çekebileceğini gösterir.
setMaxTorque , bir motorun veya motor grubunun kullanmasına izin verilen maksimum tork değerini belirler.
Daha yüksek bir yüzde, motorun veya motor grubunun daha fazla itme gücü uygulamasını sağlar, örneğin ağır bir nesneyi kaldırırken olduğu gibi. Daha düşük bir yüzde ise motorun veya motor grubunun ne kadar sert itme gücü uygulayabileceğini sınırlar. Bu, motor veya motor grubu sıkışırsa veya hareket edebileceği sınırın sonuna ulaşırsa robotu korumaya yardımcı olabilir.
Her proje, varsayılan olarak her motorun veya motor grubunun torkunun %50’sinde başlar.
Available Functions1 — Motorun veya motor grubunun nominal torkunun yüzdesi olarak maksimum torku ayarlar.
void setMaxTorque( double value, percentUnits units );
2 — Fiziksel tork birimlerini kullanarak maksimum torku ayarlar.
void setMaxTorque( double value, torqueUnits units );
Parameters3 — Motor akımını sınırlayarak maksimum torku ayarlar.
void setMaxTorque( double value, currentUnits units );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Motorun veya motor grubunun kullanabileceği maksimum tork. |
|
|
Torku yüzde olarak belirtir: % |
|
|
Torku aşağıdaki gibi fiziksel birimlerde belirtir:
|
|
|
Motor akımını sınırlayarak torku belirtir:
|
Bu fonksiyon bir değer döndürmez.
NotescurrentUnitskullanıldığında, tork, motorun veya motor grubunun kullanabileceği elektrik akımının sınırlandırılmasıyla belirlenir.
setPosition#
Bir motorun veya motor grubunun konumu, degrees veya turnsolarak ölçülen ne kadar döndüğünü gösterir. Bir tur 360 dereceye eşittir. setPosition komutu, motorun veya motor grubunun mevcut konumunu yeni bir değere değiştirir.
Örneğin, bir motor veya motor grubu 180 derece döndüyse, pozisyonu 0 dereceye ayarlamak, bu pozisyonu 180 dereceden 0 dereceye sıfırlar. Ardından motor veya motor grubu, bu yeni değere göre pozisyonlara dönebilir.
Available Functionsvoid setPosition(
double value,
rotationUnits units );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Motor veya motor grubu için ayarlanacak konum değeri. |
|
|
The position unit:
|
Bu fonksiyon bir değer döndürmez.
NotessetPositionçağrıldıktan sonra,spinToPosition’e yapılan sonraki çağrılar, güncellenmiş konumu referans olarak kullanacaktır.
setStopping#
setStopping , bir motorun veya motor grubunun hareket etmeyi nasıl durduracağını belirler: frenleme, serbest sürüş veya tutma yoluyla.
void setStopping(
brakeType mode );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Motorun veya motor grubunun nasıl duracağı:
|
Bu fonksiyon bir değer döndürmez.
Notesstop’ye yapılan sonraki herhangi bir çağrıda, belirtilen bir fren modu olmadan bu değer kullanılacaktır.
setTimeout#
setTimeout , bir motorun veya motor grubunun bir hareketi tamamlamak için ne kadar süre deneyeceğini belirler. Motor veya motor grubu bu süre içinde hareketi tamamlayamazsa, denemeyi bırakır ve bir sonraki kod satırına geçer. Bu, motorun veya motor grubunun bir harekette takılı kalmasını önler.
void setTimeout(
int32_t time,
timeUnits units );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Motorun veya motor grubunun bir hareketi tamamlamaya çalışabileceği süre. Bu süre pozitif bir tamsayı olmalıdır. |
|
|
Zaman birimi:
|
Dönüş Değeri
Bu fonksiyon bir değer döndürmez.
NotesMotor veya motor grubu zaman aşımı, hedef konumuna ulaşmayan hareketlerin yığındaki diğer komutların yürütülmesini durdurmasını önlemek için kullanılır.
Motor veya motor grubu, zaman aşımı süresi dolmadan hedef konumuna ulaşamazsa, denemeyi durduracak ve bir sonraki kod satırına geçecektir.
Zaman aşımı,
spinForvespinToPositiongibi hedef değere sahip fonksiyonlar için geçerlidir.
// Stop a long move after 1 second
Motor1.setTimeout(1, seconds);
Motor1.spinFor(forward, 2, turns);
Motor1.spinToPosition(0, degrees);
Getters#
isDone#
isDone , motorun veya motor grubunun hareketinin tamamlanıp tamamlanmadığını Boolean bir değer olarak döndürür. Bu, motorun veya motor grubunun hareketine bağlı olarak diğer davranışların zamanlamasını kontrol etmek için kullanılabilir.
true— Motor veya motor grubu hareket etmeyi bitirdi.false— Motor veya motor grubu hala hareket halinde.
Bu fonksiyon, waitForCompletion parametresine sahip aşağıdaki Hareket fonksiyonlarıyla birlikte çalışır: spinFor ve spinToPosition.
bool isDone();
Bu fonksiyon herhangi bir parametre kabul etmez.
Return ValuesMotorun veya motor grubunun hareketinin tamamlanıp tamamlanmadığını Boolean değer olarak döndürür.
true— The motor or motor group is finished moving.false— The motor or motor group is still moving.
isDone,waitForCompletionparametresine sahip aşağıdaki Hareket fonksiyonlarıyla birlikte çalışır:spinForvespinToPosition.
// Spin forward until the motor is done spinning
Motor1.spinFor(forward, 200, degrees, false);
while (true) {
if (Motor1.isDone()) {
Drivetrain.stop();
} else {
Drivetrain.drive(forward);
}
}
isSpinning#
isSpinning , motorun veya motor grubunun dönüp dönmediğini Boolean bir değer olarak döndürür. Bu, motorun veya motor grubunun hareketine bağlı olarak diğer davranışların zamanlamasını kontrol etmek için kullanılabilir.
true— Motor veya motor grubu dönüyor.false— Motor veya motor grubu dönmüyor.
Bu fonksiyon, spin, spinFor ve spinToPosition gibi Hareket hareket fonksiyonlarıyla birlikte çalışır.
bool isSpinning();
Bu fonksiyon herhangi bir parametre kabul etmez.
Return ValuesMotorun veya motor grubunun dönüp dönmediğini Boolean değer olarak döndürür.
true— The motor or motor group is spinning.false— The motor or motor group is not spinning.
isSpinning,spin,spinForvespinToPositiongibi Hareket hareket fonksiyonlarıyla çalışır.
// Spin forward until the motor is done spinning
Motor1.spinFor(forward, 200, degrees, false);
while (true) {
if (Motor1.isSpinning()) {
Drivetrain.drive(forward);
} else {
Drivetrain.stop();
}
}
position#
Bir motorun veya motor grubunun konumu, degrees veya turnsile ölçülen ne kadar döndüğünü gösterir. Bir tur 360 dereceye eşittir. position motorun veya motor grubunun mevcut konumunu döndürür.
Bir projenin başlangıcında, motorun veya motor grubunun konumu 0 dereceye ayarlanır. Motor veya motor grubu bir tur ileri dönerse, konum 360 derece veya 1 tur olur. Motor veya motor grubu ters yöne dönerse, konum negatif olur.
Available Functionsdouble position(
rotationUnits units );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
The unit to return the motor or motor group position in:
|
Motorun veya motor grubunun belirtilen birimlerdeki mevcut konumunu temsil eden double bir çift değer döndürür.
setPositionçağrısı, bu değer için referans noktasını değiştirir.Döndürülen değer, mevcut enkoder okumasını yansıtır ve motorun veya motor grubunun aktif olarak hareket edip etmediğini göstermez.
motor_groupüzerinde çağrıldığında, bu fonksiyon gruptaki ilk motorun konumunu döndürür.
// Spin, then show the final position
Motor1.spin(forward);
wait(1, seconds);
Motor1.stop();
Brain.Screen.print("Pos: %f", Motor1.position(degrees));
velocity#
velocity motorun veya motor grubunun ne kadar hızlı döndüğünü gösterir.
Pozitif bir değer, motorun veya motor grubunun ileri yönde döndüğünü, negatif bir değer ise ters yönde döndüğünü gösterir.
Available Functionsdouble velocity(
velocityUnits units );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Hızı temsil etmek için kullanılan birim:
|
Motorun veya motor grubunun belirtilen birimlerde ne kadar hızlı döndüğünü gösteren double bir çift sayı döndürür.
Not
motor_groupüzerinde çağrıldığında, bu fonksiyon gruptaki ilk motorun hızını döndürür.
current#
current motorun veya motor grubunun kullandığı elektrik akımının miktarını gösterir. Akım, motordan veya motor grubundan geçen elektrik miktarıdır. Amper cinsinden döndürüldüğünde, akım 0,0 ile 1,2 A arasında rapor edilir.
Daha yüksek akım değeri, motorun veya motor grubunun daha fazla elektrik akımı kullandığı anlamına gelir. Bu durum, motor veya motor grubu ağır bir şeyi kaldırırken, bir cisme karşı itme kuvveti uygularken veya sıkışmışken hareket etmeye çalışırken meydana gelebilir.
Bu, motorun veya motor grubunun hareket sırasında zorlanıp zorlanmadığını kontrol etmek için kullanılabilir. Akım yüksek kalırsa, motor ısınabilir veya gücü daha az verimli kullanabilir.
Available Functions1 — Motorun veya motor grubunun elektrik akımını amper cinsinden döndürür.
double current( currentUnits units = amp );
Parameters2 — Motorun veya motor grubunun elektrik akımını, azami nominal akımın yüzdesi olarak döndürür.
double current( percentUnits units );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Akımı temsil etmek için kullanılan birim: |
|
|
Akımı, motorun maksimum nominal akımının yüzdesi olarak gösterir: % |
Motorun veya motor grubunun belirtilen birimlerde çektiği elektrik akımını temsil eden double bir çift sayı döndürür.
Not
motor_groupüzerinde çağrıldığında, bu fonksiyon gruptaki tüm motorların toplam elektrik akımını döndürür.
power#
power , motorun veya motor grubunun watt cinsinden ne kadar güç kullandığını gösterir. Güç, motorun veya motor grubunun enerjiyi ne kadar hızlı kullandığını gösterir.
Daha yüksek güç değeri, motorun veya motor grubunun enerjiyi daha hızlı kullandığı anlamına gelir. Bu durum, motor veya motor grubu ağır bir şeyi kaldırırken, bir cisme karşı itme kuvveti uygularken veya sıkışmışken hareket etmeye çalışırken ortaya çıkabilir.
Bu, hareketleri karşılaştırmak veya motorun veya motor grubunun zorlanıp zorlanmadığını kontrol etmek için kullanılabilir. Güç yüksek kalırsa, motor daha fazla ısınabilir veya enerjiyi daha az verimli kullanabilir.
Available Functionsdouble power(
powerUnits units = watt );
Parametre
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Motor gücünü temsil etmek için kullanılan birim:
|
Dönüş Değeri
Motorun veya motor grubunun watt cinsinden ne kadar güç kullandığını gösteren double değerini döndürür.
Not
motor_groupüzerinde çağrıldığında, bu fonksiyon gruptaki ilk motorun elektrik gücünü döndürür.
torque#
Tork, bir motorun veya motor grubunun dönerken ne kadar güçlü bir şekilde bükme, itme veya çekme uyguladığını gösterir.
torque motorun veya motor grubunun ne kadar tork kullandığını gösterir.
Daha yüksek tork değeri, motorun veya motor grubunun daha fazla itme veya çekme kuvveti uyguladığı anlamına gelir. Bu durum, motor veya motor grubu ağır bir şeyi kaldırırken, bir cisme karşı itme kuvveti uygularken veya sıkışmış bir şeyi hareket ettirmeye çalışırken ortaya çıkabilir.
Bu yöntem, motorun veya motor grubunun zorlanıp zorlanmadığını kontrol etmek veya farklı hareketlerin ne kadar itme gerektirdiğini karşılaştırmak için kullanılabilir.
Bir motorun veya motor grubunun torkunu ayarlamak için setMaxTorque komutunu kullanın.
double torque(
torqueUnits units = Nm );
Parametre
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Motor torkunu temsil etmek için kullanılan birim:
|
Dönüş Değeri
Motorun veya motor grubunun kullandığı tork miktarını belirtilen birimlerde temsil eden double bir çift sayı döndürür.
Not
motor_groupüzerinde çağrıldığında, bu fonksiyon gruptaki ilk motorun mekanik çıkış torkunu döndürür.
efficiency#
efficiency motorun veya motor grubunun gücü ne kadar verimli kullandığını %0 ile %100 arasında bir yüzde olarak gösterir.
Verimlilik, motorun veya motor grubunun gücünün ne kadarının hareket için kullanıldığını gösterir. Daha yüksek bir verimlilik değeri, motorun veya motor grubunun gücünün daha fazlasının hareket için kullanıldığı anlamına gelir. Daha düşük bir verimlilik değeri, motor veya motor grubu çok çalışırken ancak fazla hareket etmediğinde, örneğin sıkıştığında veya bir nesneye karşı itme yaptığında ortaya çıkabilir.
Bu özellik, hareketleri karşılaştırmak veya motorun ya da motor grubunun hareket için kullanmak yerine güç israf edip etmediğini kontrol etmek için kullanılabilir.
Available Functionsdouble efficiency(
percentUnits units = percent );
Parametre
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Motor verimliliğini temsil etmek için kullanılan birim:
|
Dönüş Değeri
Motorun veya motor grubunun gücü ne kadar verimli kullandığını yüzde olarak gösteren double bir çift değer döndürür.
Not
motor_groupüzerinde çağrıldığında, bu fonksiyon gruptaki ilk motorun verimliliğini döndürür.
temperature#
temperature , motorun veya motor grubunun sıcaklığını döndürür.
Motor sıcaklığı, motorun veya motor grubunun ne kadar sıcak olduğunu gösterir. Daha yüksek sıcaklık, motorun veya motor grubunun çalışırken daha çok ısındığı anlamına gelir. Motorun tam performansla çalışmaya devam etmesi için 55°C altında kalması gerekir.
Motor veya motor grubu aşırı ısınırsa, kendini korumak için maksimum akımını düşürür. 70°Cmotor soğuyana kadar çalışmayı durdurur.
Bu özellik, motorun veya motor grubunun tekrarlanan hareketler, uzun çalışma süreleri veya bir cisme karşı itme kuvveti uygularken aşırı ısınıp ısınmadığını kontrol etmek için kullanılabilir.
Available Functions1 — Motor veya motor grubu sıcaklığını, maksimum çalışma sıcaklığının yüzdesi olarak döndürür.
double temperature( percentUnits units = percent );
2 — Motor veya motor grubu sıcaklığını fiziksel sıcaklık birimleri cinsinden döndürür.
double temperature( temperatureUnits units );
Parametre
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Motor veya motor grubu sıcaklığını yüzde olarak temsil etmek için kullanılan birim:
|
|
|
Motor veya motor grubu sıcaklığını derece cinsinden ifade etmek için kullanılan birim:
|
Dönüş Değeri
Motorun veya motor grubunun sıcaklığını belirtilen birimlerde temsil eden double bir çift sayı döndürür.
Not
Motorun çalışma sıcaklığı aralığı yaklaşık
20°C(68°F) ile70°C(158°F) arasındadır.motor_groupüzerinde çağrıldığında, bu fonksiyon gruptaki ilk motorun sıcaklığını döndürür.
voltage#
voltage motora veya motor grubuna sağlanan elektrik voltajını döndürür.
double voltage(
voltageUnits units = volt );
Parametre
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Gerilimi temsil eden birim:
|
Dönüş Değeri
Motor veya motor grubuna sağlanan elektrik voltajını belirtilen birimlerde temsil eden double değerini döndürür.
Not
motor_groupüzerinde çağrıldığında, bu fonksiyon gruptaki ilk motorun elektrik voltajını döndürür.
direction#
direction , motorun veya motor grubunun dönme yönünü döndürür.
directionType direction();
Parametre
Bu fonksiyon herhangi bir parametre almaz.
Dönüş Değeri
Motorun veya motor grubunun mevcut yönünü gösteren directionType değerini döndürür:
forward— The motor or motor group is spinning forward.reverse— The motor or motor group is spinning in reverse.
installed#
installed ise motorun veya motor grubunun IQ (1. nesil) Beynine bağlı olup olmadığını döndürür.
bool installed();
Parametre
Bu fonksiyon herhangi bir parametre almaz.
Dönüş Değeri
Motorun veya motor grubunun bağlı olup olmadığını gösteren bool boolean değerini döndürür.
true— The motor or motor group is connected.false— The motor or motor group is not connected.
count#
count bir motor grubundaki motor sayısını döndürür.
int32_t count();
Parametre
Bu fonksiyon herhangi bir parametre almaz.
Dönüş Değeri
Motor grubundaki motor sayısını temsil eden int32_t değerini döndürür.