Bộ điều khiển động cơ 55#

Giới thiệu#

Bộ điều khiển motor55 được sử dụng để điều khiển Bộ điều khiển động cơ VEX 55 được kết nối với EXP Brain. Bộ điều khiển động cơ 55 là một bộ điều khiển động cơ đời cũ được thiết kế để vận hành các động cơ DC 2 dây.

Bộ điều khiển động cơ VEX 55.

Hàm tạo lớp#

1 — Tạo một đối tượng motor55 trên Cổng thông minh được chỉ định.

motor55(
  int32_t index );

2 — Tạo một đối tượng motor55 trên Cổng thông minh được chỉ định và thay đổi hướng quay dương.

motor55(
  int32_t index,
  bool    reverse );

3 — Tạo một đối tượng motor55 trên Cổng thông minh được chỉ định, đặt điện áp điều khiển tối đa và thay đổi hướng quay dương.

motor55(
  int32_t index,
  double  maxv,
  bool    reverse );

Lớp Destructor#

Hủy đối tượng motor55 và giải phóng các tài nguyên liên quan.

~motor55();

Thông số#

Tham số

Kiểu

Sự miêu tả

index

int32_t

Cổng thông minh mà Bộ điều khiển động cơ 55 được kết nối, được viết là PORTx, trong đó x là số cổng (ví dụ: PORT1).

reverse

bool

Xác định xem chiều quay của động cơ có bị đảo ngược hay không:

  • true — Chiều quay thuận của động cơ bị đảo ngược.
  • false — Chiều quay thuận của động cơ vẫn bình thường.

maxv

double

Điện áp tối đa mà Bộ điều khiển động cơ 55 có thể cấp cho động cơ.

Ví dụ#

// Create the motor55 instance in Smart Port 1
motor55 Motor1 = motor55(PORT1);

Chức năng thành viên#

Lớp motor55 bao gồm các hàm thành viên sau:

  • spin — Quay động cơ theo hướng được chỉ định.

  • stop — Dừng động cơ.

  • setVelocity — Cho động cơ DC biết tốc độ quay.

  • setStopping — Đặt hành vi dừng (trượt hoặc phanh).

  • setReversed — Đặt xem hướng quay của động cơ có bị đảo ngược hay không.

  • current — Trả về dòng điện của động cơ.

  • voltage — Trả về điện áp của động cơ.

  • temperature — Trả về nhiệt độ động cơ.

  • getMotorType — Trả về loại động cơ/bộ điều khiển được phát hiện.

  • installed — Trả về liệu Bộ điều khiển động cơ 55 có được phát hiện trên Cổng thông minh được chỉ định hay không.

Trước khi gọi bất kỳ hàm thành viên nào của motor55 , cần phải tạo một thể hiện, như được hiển thị bên dưới:

/* This constructor is required when using VS Code.
Motor Controller 55 configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */

// Create the motor55 instance in Smart Port 1
motor55 MC55_1 = motor55(PORT1);

spin#

Làm cho động cơ quay theo hướng đã chỉ định liên tục.

Chức năng khả dụng

1 — Quay bằng vận tốc hiện được cấu hình.

void spin(
  directionType dir );

2 — Quay ở điện áp đã chỉ định.

void spin(
  directionType dir,
  double        voltage,
  voltageUnits  units );

Tham số

Tham số

Kiểu

Sự miêu tả

dir

directionType

Hướng quay của động cơ: forward hoặc reverse.

voltage

double

Giá trị điện áp đặt vào động cơ. Giá trị âm sẽ làm động cơ quay ngược chiều kim đồng hồ dir.

units

voltageUnits

Đơn vị dùng để biểu thị điện áp:

  • volt vôn
  • voltageUnits::mV milivôn

Giá trị trả về

Hàm này không trả về giá trị nào.

Ghi chú

  • Chức năng này không cần chờ đợi và chương trình sẽ tiếp tục thực thi ngay sau khi được gọi.

  • Động cơ sẽ tiếp tục quay cho đến khi stop được gọi hoặc spin khác được sử dụng.

stop#

Dừng động cơ quay bằng cách sử dụng chế độ phanh hiện đang được cấu hình.

Chức năng khả dụng

void stop();

Tham số

Hàm này không nhận tham số nào.

Giá trị trả về

Hàm này không trả về giá trị nào.

Ghi chú

  • Dừng động cơ bằng cách sử dụng chế độ dừng được cấu hình hiện tại được thiết lập bởi setStopping.

setVelocity#

Thông số này cho biết tốc độ quay của động cơ DC. Tỷ lệ phần trăm càng cao thì động cơ DC càng quay nhanh, và tỷ lệ phần trăm càng thấp thì động cơ DC càng quay chậm.

Mỗi dự án đều bắt đầu với việc mỗi động cơ DC được kết nối quay ở tốc độ 50% theo mặc định.

Chức năng khả dụng

void setVelocity(
    double       velocity,
    percentUnits units = percent );

Tham số

Tham số

Kiểu

Sự miêu tả

velocity

double

Tốc độ quay từ 0% đến 100% khi sử dụng percent.

units

percentUnits

Đơn vị vận tốc: percent pct phần trăm.

Giá trị trả về

Hàm này không trả về giá trị nào.

Ghi chú

  • Bất kỳ cuộc gọi tiếp theo nào tới spin mà không có điện áp được chỉ định sẽ sử dụng giá trị này.

setStopping#

Thiết lập cách động cơ hoạt động khi dừng lại.

Chức năng khả dụng

void setStopping(
    brakeType mode );

Tham số

Tham số

Kiểu

Sự miêu tả

mode

brakeType

Chế độ dừng được áp dụng khi stop được gọi:

  • coast — Động cơ chạy chậm đến khi dừng hẳn
  • brake — Động cơ dừng nhanh bằng cách sử dụng phanh

Giá trị trả về

Hàm này không trả về giá trị nào.

Ghi chú

  • Bất kỳ cuộc gọi tiếp theo nào tới stop sẽ sử dụng chế độ dừng này.

  • Bộ điều khiển động cơ 55 chỉ hỗ trợ coast chế độ phanh và brake độ phanh. Chế độ giữ hold không được hỗ trợ.

setReversed#

Thiết lập xem hướng quay của động cơ có bị đảo ngược hay không.

Chức năng khả dụng

void setReversed(
    bool value );

Tham số

Tham số

Kiểu

Sự miêu tả

value

bool

Liệu hướng quay của động cơ có bị đảo ngược hay không:

  • true — Đảo ngược hướng quay của động cơ.
  • false — Khôi phục hướng quay của động cơ về mặc định.

Giá trị trả về

Hàm này không trả về giá trị nào.

Ghi chú

  • Gọi setReversed cũng giống như thay đổi tham số reverse trong constructor.

current#

Giá trị current cho biết lượng dòng điện mà động cơ DC đang sử dụng. Dòng điện là lượng điện năng chạy qua động cơ DC. Khi được trả về dưới dạng ampe, dòng điện được báo cáo từ 0,0 đến 1,2 A.

Giá trị dòng điện cao hơn có nghĩa là động cơ DC đang sử dụng nhiều điện năng hơn. Điều này có thể xảy ra khi động cơ DC đang nâng vật nặng, đẩy vào vật thể hoặc cố gắng di chuyển khi bị kẹt.

Điều này có thể được sử dụng để kiểm tra xem động cơ DC có bị quá tải trong quá trình chuyển động hay không. Nếu dòng điện vẫn cao, động cơ có thể bị nóng lên hoặc sử dụng năng lượng kém hiệu quả hơn.

Available Functions

1 — Trả về cường độ dòng điện của động cơ DC tính bằng ampe.

double current(
  currentUnits units = amp );

2 — Trả về dòng điện của động cơ DC dưới dạng phần trăm dòng điện định mức tối đa.

double current(
  percentUnits units );

Parameters

Tham số

Kiểu

Sự miêu tả

units

currentUnits

Đơn vị dùng để biểu thị dòng điện:amp (mặc định) — ampe

units

percentUnits

Represents current as a percentage of the motor’s maximum rated current:percent / pct — percent

Return Values

Hàm trả về giá trị double biểu thị lượng dòng điện mà động cơ DC đang sử dụng, được đo bằng đơn vị đã chỉ định.

voltage#

Trả lại điện áp đã cấp cho động cơ.

Available Functions
double voltage(
  voltageUnits units = volt );

Tham số

Tham số

Kiểu

Sự miêu tả

units

voltageUnits

Đơn vị biểu thị điện áp:

  • volt (mặc định)
  • voltageUnits::mV — milivolt

Giá trị trả về

Trả về giá trị double , biểu thị điện áp của động cơ theo đơn vị đã chỉ định.

temperature#

temperature trả về nhiệt độ của động cơ DC.

Nhiệt độ động cơ cho biết động cơ DC đang nóng lên như thế nào. Nhiệt độ càng cao có nghĩa là động cơ DC càng nóng lên trong quá trình hoạt động. Động cơ cần duy trì nhiệt độ dưới 55°C để hoạt động hết công suất.

Nếu động cơ DC quá nóng, nó sẽ giảm dòng điện tối đa để tự bảo vệ. Ở nhiệt độ 70°C, động cơ sẽ ngừng hoạt động cho đến khi nguội hẳn.

Chức năng này có thể được sử dụng để kiểm tra xem động cơ DC có bị quá nóng trong quá trình chuyển động lặp đi lặp lại, hoạt động trong thời gian dài hoặc khi nó đẩy vào một vật thể hay không.

Available Functions

1 — Trả về nhiệt độ động cơ DC dưới dạng phần trăm so với nhiệt độ hoạt động tối đa.

double temperature(
  percentUnits units = percent );

2 — Trả về nhiệt độ động cơ DC theo đơn vị nhiệt độ vật lý.

double temperature(
  temperatureUnits units );

Tham số

Tham số

Kiểu

Sự miêu tả

units

percentUnits

Đơn vị dùng để biểu thị nhiệt độ động cơ DC dưới dạng phần trăm:

  • percent phần pct (mặc định) — phần trăm

units

temperatureUnits

The unit used to represent DC motor temperature in degrees:

  • celsius — degrees Celsius
  • fahrenheit — degrees Fahrenheit

Giá trị trả về

Trả về giá trị double , biểu thị nhiệt độ của động cơ DC theo đơn vị đã chỉ định.

Ghi chú

  • Phạm vi nhiệt độ hoạt động của động cơ xấp xỉ 20°C (68°F) đến 70°C (158°F).

getMotorType#

Trả về loại động cơ/bộ điều khiển đã được phát hiện.

Chức năng khả dụng

int32_t getMotorType();

Tham số

Hàm này không nhận tham số nào.

Giá trị trả về

Trả về giá trị int32_t cho biết loại động cơ/bộ điều khiển được phát hiện:

  • 0 — 11W Motor
  • 1 — 5.5W Motor
  • 2 — Motor Controller 55

installed#

Trả về trạng thái cho biết Bộ điều khiển động cơ 55 có được kết nối với EXP Brain hay không.

Available Functions
bool installed();

Tham số

Hàm này không nhận tham số nào.

Giá trị trả về

Trả về giá trị boolean bool cho biết Bộ điều khiển động cơ 55 có được kết nối hay không.

  • true — The Motor Controller 55 is connected.
  • false — The Motor Controller 55 is not connected.