Robot điều khiển từ xa. Điều khiển robot từ xa bằng máy tính bảng. Sơ đồ kết nối điều khiển từ xa

Để tích lũy kinh nghiệm làm việc với bo mạch Arduino, có thể nói, dự án này đã được tạo ra như một trải nghiệm học tập và chỉ để giải trí. Mục tiêu của dự án là tạo ra một chiếc ô tô có thể di chuyển tự động, tránh các chướng ngại vật khác nhau mà không va chạm với chúng.

Bước 1: Danh sách các hạng mục và kinh phí dự án

1. Ô tô đồ chơi điều khiển bằng sóng vô tuyến (radio control).

Thứ này có giá khoảng 20 đô, nếu có cơ hội chi nhiều hơn, bạn có thể sử dụng nó tốt hơn.

2. Bộ vi điều khiển Arduino Uno - $25

3. Tấm chắn động cơ để điều khiển động cơ điện - $20

4. GPS để điều hướng. Khiên GPS tối ưu của Adafbean - $50

5. Từ kế làm la bàn để điều hướng. Từ kế Adafbean HMC5883 - $10

6. Cảm biến khoảng cách siêu âm để tránh chướng ngại vật. HC-SR04 - $6

7. Màn hình LCD hiển thị trạng thái và thông tin của xe. Màn hình LCD Blue 1602 IIC, I2C TWI - $6 (bạn có thể sử dụng cái khác)

8. Cảm biến hồng ngoại và điều khiển từ xa.

9. Phác thảo Arduino (chương trình C++).

10. Tấm gỗ mỏng làm bệ gắn.

11. Ban phát triển. Một cái dài và hẹp, còn cái kia thì nhỏ, để cài đặt riêng từ kế trên đó khỏi các phần tử khác.

12. Người nhảy.

13. Bộ lắp cảm biến siêu âm - $12

14. Mỏ hàn và que hàn.

Vì vậy, tổng cộng, mọi thứ đều có giá khoảng 150 USD, điều này giả sử bạn mua tất cả các thành phần này vì bạn có thể đã có một số thành phần này.

Bước 2: Lắp đặt khung và bệ

Bộ điều khiển vô tuyến đã được tháo ra khỏi một món đồ chơi không mong muốn có giá 15 đô la.

Chiếc xe ở đây có hai động cơ. Sử dụng một động cơ, điều khiển từ xa sẽ điều khiển tốc độ của robot và sử dụng động cơ còn lại để điều khiển hệ thống lái.

Một tấm ván mỏng được sử dụng làm bề mặt gắn trên đó gắn các bảng mạch bánh mì, Arduino, LCD, v.v. Pin được đặt dưới bảng và dây được luồn qua các lỗ khoan.

Bước 3: Lập trình

Arduino được điều khiển thông qua chương trình C++.

Nguồn

RC_Car_Test_2014_07_20_001.ino

Bước 4: Màn hình LCD

Trong quá trình hoạt động, màn hình hiển thị các thông tin sau:

Hàng 1:

1. TH – Nhiệm vụ, hướng tới điểm tham chiếu hiện tại

2. CH - Hướng hiện tại của robot

Hàng 2:

3. Err - Hướng la bàn, hiển thị hướng robot đang di chuyển (trái hoặc phải)

4. Dist - Khoảng cách tiêu cự (tính bằng mét) đến điểm tham chiếu hiện tại

Hàng 3:

5. SNR – Khoảng cách sonar, tức là khoảng cách tới bất kỳ vật thể nào phía trước robot

6. Spd - Tốc độ robot

Hàng 4:

7. Mem - Bộ nhớ (tính bằng byte). Bộ nhớ Arduino có 2 KB

8. WPT n OF x - Hiển thị vị trí của robot trong danh sách điểm tham chiếu

Bước 5: Tránh va chạm với đồ vật

Để giúp robot tránh chướng ngại vật, cảm biến siêu âm “Ping” đã được sử dụng ở đây. Người ta quyết định kết hợp nó với thư viện Arduino NewPing, vì nó tốt hơn thư viện PIng đơn giản.

Thư viện được lấy từ đây: https://github.com/fmbfla/Arduino/tree/master/NewPing

Cảm biến được lắp đặt trên cản trước của robot.

Xin chào, Habrakhabr! Tôi ngồi vào buổi tối ngày 11 tháng 6, xem một bộ phim. Thật bất ngờ cho bản thân, tôi phát hiện ra rằng một người phụ nữ mà tôi chưa từng biết trước đây đã viết thư cho tôi với lời đề nghị chế tạo một robot cho nhiệm vụ mới của họ. Điểm mấu chốt là bạn cần giải các câu đố, khám phá những nơi ẩn náu, áp dụng chính xác các gợi ý, sử dụng những thứ có sẵn và cuối cùng là lấy chìa khóa và mở cửa... Tôi được yêu cầu chế tạo một robot được điều khiển từ máy tính bằng một chương trình riêng. Tôi nghi ngờ về một số vấn đề, chẳng hạn như: liệu tôi có thời gian và cách chính xác để thực hiện truyền dữ liệu không dây không (trước đây tôi chỉ thực hiện truyền dữ liệu không dây trên NXT)? Sau khi cân nhắc những ưu và nhược điểm, tôi đồng ý. Sau đó, tôi bắt đầu nghĩ đến việc truyền dữ liệu. Vì cần phải chế tạo một robot một cách nhanh chóng, không có thời gian để ghi nhớ và làm chủ thêm, chẳng hạn như Delphi, nên nảy sinh ý tưởng tạo ra một mô-đun có thể gửi lệnh. Máy tính chỉ cần gửi dữ liệu đến cổng COM. Phương pháp này lạ nhưng nhanh nhất. Đây là những gì tôi muốn mô tả ở đây. Tôi cũng sẽ đính kèm 3 chương trình giúp bạn chế tạo một chiếc ô tô điều khiển bằng sóng vô tuyến.
Lắp ráp máy phát và chương trình của nó.
Tôi đã tạo một mô-đun cho máy tính từ FTDI Basic Breakout 5/3.3V từ DFrobot, một bộ vi điều khiển ATMEGA 328P-PU khá phổ biến với bộ tải khởi động Arduino và mô-đun vô tuyến dựa trên chip nRF24L01. Về cơ bản nó chỉ là một Arduino Uno với mô-đun radio. Đó là những gì nó được. Mô-đun vô tuyến có một tính năng mà tôi không nhận thấy ngay: điện áp đầu vào phải nằm trong khoảng từ 3 đến 3,6 volt (mặc dù cấp 5 volt vào nó sẽ không giết chết nó, nhưng sẽ không hoạt động), giới hạn trên của logic đơn vị là 5V. Điều này có nghĩa là để kết nối mô-đun vô tuyến với mega, bạn không cần bộ chuyển đổi mức giữa 3,3V và 5V mà bạn cần lắp bộ ổn định 3,3V. FTDI có bộ ổn định tích hợp và tôi cấp nguồn cho mô-đun radio từ nó.

Mô-đun này trông như thế này (bên trong và bên trong cụm):

Chương trình bao gồm khởi tạo, thông báo bắt đầu và xử lý các lệnh từ chương trình điều khiển. Đây là trường hợp trong trường hợp của tôi. Các lệnh cơ bản của thư viện Mirf:

#bao gồm
#bao gồm
#bao gồm
#bao gồm
#bao gồm
Những thư viện này cần thiết để mô-đun radio hoạt động

Mirf.csnPin = 4 - đặt số pin chịu trách nhiệm “cho phép liên lạc” giữa mô-đun vô tuyến và MK
Mirf.cePin = 6 - đặt số pin chịu trách nhiệm về chế độ hoạt động của mô-đun vô tuyến (máy thu/máy phát)
Mirf.spi = &MirfHardwareSpi - định cấu hình dòng SPI
Mirf.init() - khởi tạo mô-đun radio
Mirf.payload = 1 - kích thước tính bằng byte của một tin nhắn (mặc định là 16, tối đa là 32)
Mirf.channel = 19 - đặt kênh (0 - 127, mặc định 0)
Mirf.config() - đặt tham số truyền


Mirf.setTADDR((byte *)"serv1") - chuyển mô-đun radio sang chế độ máy phát
Mirf.setRADDR((byte *)“serv1”) - chuyển mô-đun radio sang chế độ máy thu

Mirf.send(data) - gửi một mảng byte
Mirf.dataReady() - báo cáo kết thúc xử lý dữ liệu đã nhận
Mirf.getData(data) - ghi dữ liệu nhận được vào mảng dữ liệu

Tôi đang đính kèm mã cho chương trình máy phát.

Chương trình phát

#bao gồm
#bao gồm
#bao gồm
#bao gồm
#bao gồm

Char hoạt động;
dữ liệu byte;

Thiết lập trống()
{
Serial.begin(19200);

Mirf.csnPin = 4;
Mirf.cePin = 6;

Mirf.init();
Mirf.payload = 1;
Mirf.channel = 19;
Mirf.config();

Mirf.setTADDR((byte *)"serv1");

// thông báo tín hiệu về việc bắt đầu công việc
dữ liệu=7;
Mirf.send(dữ liệu);
độ trễ (200);
}

vòng lặp trống()
{
if (Serial.available()) //Nếu dữ liệu đã sẵn sàng để đọc
{
active=Serial.read(); // Ghi dữ liệu vào một biến
}

Nếu (hoạt động=="2")
{
dữ liệu=2;
}

Nếu (hoạt động=="3")
{
dữ liệu=3;
}

Nếu (hoạt động=="4")
{
dữ liệu=4;
}

Nếu (hoạt động=="5")
{
dữ liệu=5;
}

Nếu (hoạt động=="6")
{
dữ liệu=6;
}

Mirf.send(dữ liệu); //Gửi dữ liệu
while(Mirf.isSending()); // Đợi trong khi dữ liệu được gửi
}

Chương trình quản lý.

Có một điều thú vị - Đang xử lý. Cú pháp giống như trong Arduino, chỉ thay vì void loop() thì có void draw(). Nhưng nó thậm chí còn trở nên thú vị hơn trong trường hợp của tôi với thư viện Serial đang xử lý, cho phép bạn làm việc với cổng nối tiếp. Sau khi đọc hướng dẫn trên trang web của Spurkfun, tôi thử nhấp nháy đèn LED trên Arduino được kết nối với máy tính chỉ bằng một cú click chuột. Sau đó, tôi viết chương trình điều khiển robot từ bàn phím. Tôi đang đính kèm mã điều khiển mũi tên. Về nguyên tắc, không có gì bất thường trong đó.

Chương trình điều khiển máy

xử lý nhập khẩu.serial.*;
nhập cc.arduino.*;

nối tiếp myPort;
PFont f=createFont("LetterGothicStd-32.vlw", 24);

Thiết lập trống()
{
kích thước (360, 160);
cú đánh (255);
nền(0);
văn bảnFont(f);

Chuỗi portName = "XXXX"; // Ở đây bạn cần viết tên cổng của mình
myPort = Serial mới (cái này, portName, 19200);
}

Vẽ vô hiệu() (
if (keyPressed == sai)
{
thông thoáng();
myPort.write("6");
println("6");
}
}

Phím tắt được nhấn()
{
// 10 - nhập
// 32 - dấu cách
// 37/38/39/40 - phím
thông thoáng();

Điền(255);
textAlign(CENTER);
//text(keyCode, 180, 80);

Chuyển đổi (mã khóa)
{
trường hợp 37:
text("Edem vlevo", 180, 80);
myPort.write("1");
phá vỡ;

Trường hợp 38:
text("Edem pryamo", 180, 80);
myPort.write("2");
phá vỡ;

Trường hợp 39:
text("Edem vpravo", 180, 80);
myPort.write("3");
phá vỡ;

Trường hợp 40:
text("Edem nazad", 180, 80);
myPort.write("4");
phá vỡ;

Mặc định:
text("Takoy kommandi net", 180, 80);
myPort.write("6");
phá vỡ;
}
}

Chương trình nhận.

Việc khởi tạo chương trình này khác với việc khởi tạo chương trình máy phát chỉ trong một dòng. Lệnh chính trong vòng lặp vô tận là Mirf.getData(data). Tiếp theo, lệnh nhận được sẽ được so sánh với các con số tương ứng với bất kỳ hành động nào của robot. Chà, vậy thì robot hành động chính xác theo lệnh. Tôi đang đính kèm mã chương trình cho bộ thu của máy.

Chương trình máy

#bao gồm
#bao gồm
#bao gồm
#bao gồm
#bao gồm

Thiết lập trống()
{
Serial.begin(9600);

PinMode(13, OUTPUT); //DẪN ĐẾN

Mirf.csnPin = 10;
Mirf.cePin = 9;
Mirf.spi =
Mirf.init();
Mirf.payload = 1;
Mirf.channel = 19;
Mirf.config();
Mirf.setRADDR((byte *)"serv1");
}

vòng lặp trống()
{
dữ liệu byte;

If(!Mirf.isSending() && Mirf.dataReady())
{
Mirf.getData(dữ liệu);
Serial.println(dữ liệu);
}

Chuyển đổi (dữ liệu)
{
trường hợp 1:
động cơ(-100, 100); // rẽ trái
phá vỡ;

Trường hợp 2:
động cơ(100, 100); // đi thẳng
phá vỡ;

Trường hợp 3:
động cơ(100, -100); // rẽ phải
phá vỡ;

Trường hợp 4:
động cơ(-100, -100); // quay lại
phá vỡ;

Mặc định:
động cơ(0, 0); // chúng tôi đang đứng
phá vỡ;
}

Độ trễ(50);
}

Phần kết luận.

Điều gì phát sinh từ tất cả những điều này:

Tôi đã tạo ra con robot này cho chứng sợ Claustrophobia. Họ tiến hành các nhiệm vụ trong thực tế ở các thành phố khác nhau và chỉ để thực hiện một trong những nhiệm vụ này, ban tổ chức cần một robot đặc công điều khiển bằng sóng vô tuyến. Tôi thích nó. Tất nhiên, điều này là sai lầm, bởi vì... dựa trên nền tảng điều khiển bằng các công cụ giao tiếp được tích hợp trong máy tính xách tay, nhưng nó được thực hiện một cách độc lập, thực hiện rất nhanh chóng và không gặp bất kỳ trở ngại nào. Tôi hy vọng bài viết này sẽ giúp bạn làm được điều gì đó tương tự, thậm chí có thể phức tạp hơn. Đây, ai muốn gì thì làm.

Thẻ: Thêm thẻ

Mô-đun chính của bộ xây dựng Lego Mindstorms EV3 có thể hoạt động với chương trình cơ sở leJOS, cho phép bạn chạy các ứng dụng Java. Đặc biệt đối với điều này, Oracle đã phát hành và hỗ trợ một phiên bản riêng biệt của Java SE chính thức.

JVM bình thường cho phép tôi sử dụng giao thức Phần mở rộng quản lý Java (JMX) được tích hợp trong đó để triển khai điều khiển từ xa cánh tay robot. Để kết hợp các yếu tố điều khiển, thông số đọc của cảm biến và hình ảnh từ camera IP được cài đặt trên robot, sơ đồ ghi nhớ được tạo trên nền tảng AggreGate sẽ được sử dụng.


Bản thân robot bao gồm hai bộ phận chính: khung gầm và cánh tay điều khiển. Chúng được điều khiển bởi hai máy tính EV3 hoàn toàn độc lập, tất cả đều được phối hợp thông qua máy chủ điều khiển. Không có kết nối trực tiếp giữa các máy tính.

Cả hai máy tính đều được kết nối với mạng IP của phòng thông qua bộ điều hợp Wi-Fi NETGEAR WNA1100. Robot được điều khiển bởi tám động cơ Mindstorms - 4 trong số đó là “lớn” và 4 động cơ “nhỏ”. Cũng được lắp đặt là các cảm biến hồng ngoại và siêu âm để tự động dừng khi gặp chướng ngại vật khi lùi, hai cảm biến cảm ứng để dừng chuyển động quay của bộ điều khiển do chướng ngại vật và một cảm biến con quay hồi chuyển để hỗ trợ người vận hành định hướng bằng cách hình dung vị trí của vai.

Khung xe có hai động cơ, mỗi động cơ truyền lực đến một cặp truyền động bánh xích. Một động cơ khác quay toàn bộ cánh tay robot 360 độ.

Trong bản thân bộ điều khiển, hai động cơ có nhiệm vụ nâng và hạ “vai” và “cánh tay”. Ba động cơ nữa có nhiệm vụ nâng/hạ tay, xoay 360 độ và siết/mở các “ngón tay”.

Đơn vị cơ khí phức tạp nhất là “bàn chải”. Do phải di chuyển ba động cơ hạng nặng đến khu vực “khuỷu tay” nên việc thiết kế hóa ra khá phức tạp.

Nói chung, mọi thứ trông như thế này (rất khó tìm thấy hộp diêm theo tỷ lệ):

Hai camera được lắp đặt để truyền hình ảnh:

  • Một điện thoại thông minh Android thông thường có cài đặt ứng dụng IP Webcam để có cái nhìn tổng quát (ảnh HTC One)
  • AI-Ball camera siêu nhỏ Wi-Fi tự động, được cài đặt trực tiếp trên “bàn tay” của người thao tác và giúp lấy các vật thể có hình dạng phức tạp

Lập trình EV3

Bản thân phần mềm của robot hóa ra càng đơn giản càng tốt. Các chương trình trên hai máy tính rất giống nhau, chúng khởi động máy chủ JMX, đăng ký MBeans tương ứng với động cơ và cảm biến, rồi chuyển sang chế độ ngủ để chờ các hoạt động của JMX.

Mã các lớp chính của phần mềm cánh tay robot

lớp công khai Arm ( public static void main(String args) ( try ( EV3Helper.printOnLCD("Starting..."); EV3Helper.startJMXServer("192.168.1.8", 9000); MBeanServer mbs = ManagementFactory.getPlatformMBeanServer(); EV3LargeRegulateMotor motor = new EV3LargeRegulateMotor(BrickFinder.getDefault().getPort("A")); LargeMotorMXBean m = new LargeMotorController(motor); // Đăng ký các động cơ khác tại đây EV3TouchSensor touchSensor = new EV3TouchSensor(SensorPort.S1); new TouchSensorController(touchSensor); ; // Đăng ký các cảm biến khác tại đây EV3Helper.printOnLCD("Running"); Thread.sleep(Integer.MAX_VALUE); bắt (Có thể ném e) ( e.printStackTrace(); ) ) lớp công khai EV3Helper ( tĩnh void startJMXServer(Địa chỉ chuỗi, cổng int) ( Máy chủ MBeanServer = ManagementFactory.getPlatformMBeanServer(); hãy thử ( java.rmi.registry.LocateRegistry.createRegistry(port); JMXServiceURL url = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://" + địa chỉ + ://" + String.valueOf(port ) + "/máy chủ"); đạo cụ = HashMap mới (); props.put("com.sun.management.jmxremote.authenticate", "false"); props.put("com.sun.management.jmxremote.ssl", "false"); JMXConnectorServer ConnectorServer = JMXConnectorServerFactory.newJMXConnectorServer(url, props, server); ConnectorServer.start(); ) bắt (Ngoại lệ e) ( e.printStackTrace(); ) ) static void printOnLCD(String s) ( LCD.clear(); LCD.drawString(s, 0, 4); ) )

Đối với mỗi loại cảm biến và động cơ, một giao diện MBean và một lớp triển khai nó đã được tạo, giao diện trực tiếp ủy quyền tất cả các lệnh gọi đến lớp có trong API leJOS.

Mã giao diện ví dụ

giao diện công cộng LargeMotorMXBean ( public tóm tắt void Forward(); boolean trừu tượng công khai đình chỉRegulation(); tóm tắt công khai int getTachoCount(); float trừu tượng công khai getPosition(); trừu tượng công khai void flt(); trừu tượng công khai void flt(boolean ngay lập tứcReturn); tóm tắt công khai void stop(boolean instantReturn); trừu tượng công khai void waitComplete(); trừu tượng công khai void xoayTo(int limitAngle, boolean instantReturn); trừu tượng công khai int getLimitAngle(); ; trừu tượng công khai void xoayTo(int limitAngle()); trừu tượng công khai void setStallThreshold(int error, int time); trừu tượng công khai int getRotationSpeed(); trừu tượng công khai void stop(); tóm tắt công khai int getSpeed(); trừu tượng công khai void setSpeed(int speed); )

Ví dụ về mã triển khai MBean

lớp công khai LargeMotorController triển khai LargeMotorMXBean ( động cơ EV3LargeRegulatedMotor cuối cùng; public LargeMotorController(EV3LargeRegulateMotor motor) ( this.motor = motor; ) @Override public void Forward() ( motor.forward(); ) @Override public booleansusRegulation() ( return motor. SuspendingRegulation(); ) @Override public int getTachoCount() ( return motor.getTachoCount(); ) @Override public float getPosition() ( return motor.getPosition(); ) @Override public void flt() ( motor.flt() ; ) @Override public void flt(boolean instantReturn) ( motor.flt(immediateReturn); ) // Các phương thức ủy quyền tương tự bị bỏ qua )

Thật kỳ lạ, chương trình đã kết thúc ở đó. Không một dòng mã nào được viết ở phía máy chủ hoặc máy trạm của người vận hành.

Kết nối với máy chủ

Robot được điều khiển trực tiếp bởi máy chủ nền tảng AggreGate IoT. Phiên bản miễn phí được cài đặt của AggreGate Network Manager bao gồm trình điều khiển giao thức JMX và cho phép bạn kết nối tối đa mười máy chủ JMX. Chúng ta sẽ cần kết nối hai - một cho mỗi viên gạch EV3.

Trước hết, bạn cần tạo tài khoản thiết bị JMX bằng cách chỉ định URL được chỉ định khi khởi động máy chủ JMX trong cài đặt:

Thuộc tính kết nối thiết bị JMX


Sau đó, chọn nội dung (tức là MBeans trong trường hợp này) sẽ được thêm vào hồ sơ thiết bị:

Chọn MBeans


Và sau vài giây chúng ta xem xét và thay đổi giá trị hiện tại của tất cả các thuộc tính được thăm dò của MBeans:

Ảnh chụp nhanh thiết bị


Bạn cũng có thể kiểm tra các hoạt động khác nhau bằng cách gọi thủ công các phương thức MBean, chẳng hạn như Forward() và Stop().

Danh sách các hoạt động


Tiếp theo, chúng tôi thiết lập thời gian thăm dò cho các cảm biến. Tần số bỏ phiếu cao (100 lần mỗi giây) được sử dụng do máy chủ điều khiển được đặt trên mạng cục bộ cùng với robot và chính máy chủ đưa ra quyết định dừng quay khi gặp chướng ngại vật, v.v. Giải pháp này chắc chắn không mang tính công nghiệp, nhưng với một mạng Wi-Fi hoạt động tốt trong một căn hộ, nó tỏ ra khá đầy đủ.

Kỳ khảo sát


Giao diện vận hành

Bây giờ hãy chuyển sang tạo giao diện vận hành. Để làm điều này, trước tiên chúng tôi tạo một tiện ích mới và thêm các thành phần cần thiết vào đó. Trong phiên bản làm việc cuối cùng, nó trông như thế này:

Trên thực tế, toàn bộ giao diện bao gồm một số bảng với các nút, thanh trượt và chỉ báo, được nhóm theo nhiều bố cục lưới khác nhau và hai trình phát video lớn phát hình ảnh từ camera.

Xem từ bên trong trình chỉnh sửa giao diện

Toàn bộ hình thức:

Xem với bảng điều khiển container được hiển thị:


Bây giờ, như các chuyên gia hệ thống điều khiển tự động nói, tất cả những gì còn lại là “hồi sinh sơ đồ ghi nhớ”. Vì mục đích này, cái gọi là sự ràng buộc kết nối các thuộc tính và phương thức của các thành phần giao diện đồ họa với các thuộc tính và phương thức của đối tượng máy chủ. Vì máy tính EV3 đã được kết nối với máy chủ nên MBeans của robot của chúng tôi cũng có thể là đối tượng máy chủ.

Toàn bộ giao diện vận hành chứa khoảng 120 liên kết, hầu hết đều cùng loại:

Một nửa số liên kết cùng loại thực hiện điều khiển bằng cách nhấp vào các nút nằm trên sơ đồ ghi nhớ. Điều này đẹp, thuận tiện cho việc thử nghiệm nhưng hoàn toàn không phù hợp với chuyển động thực tế của robot và tải trọng chuyển động. Kích hoạt các ràng buộc từ nhóm này là các sự kiện chuột épchuộtPhát hành các nút khác nhau.

Nửa sau của các liên kết cho phép bạn điều khiển robot từ bàn phím bằng cách nhấn nút Điều khiển bàn phím trước tiên. Những ràng buộc này phản ứng với các sự kiện đã nhấn phímkeyĐã phát hành và trong điều kiện của mỗi ràng buộc, mã nút nào sẽ được phản hồi.

Tất cả các phương thức gọi liên kết điều khiển phía trước(), phía sau()dừng lại() nhiều MBean khác nhau Vì việc phân phối sự kiện diễn ra không đồng bộ nên điều quan trọng là phải gọi hàm. phía trước()/phía sau() và các cuộc gọi tiếp theo dừng lại() không lẫn lộn. Để thực hiện điều này, các liên kết gọi phương thức của một MBean sẽ được thêm vào một Hàng đợi.

Hai nhóm liên kết riêng biệt đặt tốc độ và gia tốc ban đầu của động cơ (hiện tại điều này được triển khai ở phía máy chủ bằng cách sử dụng mô hình, do đó các liên kết này bị vô hiệu hóa) và thay đổi tốc độ/gia tốc khi di chuyển các thanh trượt Tốc độ và Gia tốc.

Gửi công việc tốt của bạn trong cơ sở kiến ​​thức rất đơn giản. Sử dụng mẫu dưới đây

Các sinh viên, nghiên cứu sinh, các nhà khoa học trẻ sử dụng nền tảng kiến ​​thức trong học tập và công việc sẽ rất biết ơn các bạn.

Đăng trên http://www.allbest.ru/

Phát triển hệ thống điều khiển từ xa cho robot giáo dục

Giới thiệu

chương trình người dùng robot bộ vi xử lý

Robotics là một trong những lĩnh vực phát triển năng động nhất hiện nay. Chúng ta thấy robot đang dần chinh phục mọi lĩnh vực của cuộc sống - sản xuất, y học, nông nghiệp, v.v. Trong tương lai gần, robot sẽ trở thành một phần không thể thiếu trong cuộc sống hàng ngày. Vì vậy, cần có các chuyên gia có kỹ năng trong lĩnh vực robot và cơ điện tử. Đổi lại, để đào tạo các chuyên gia tương lai, cần phải có robot giáo dục để có thể nâng cao kiến ​​​​thức của họ.

Thật ngạc nhiên là công nghệ đang phát triển nhanh chóng như thế nào trong thời đại chúng ta; có vẻ như rất khó để theo kịp tốc độ phát triển của chúng. Điện thoại di động là một trong những ví dụ nổi bật; ngày nay mọi người đều có chúng. Hơn nữa, họ đã trở thành một phần không thể thiếu trong xã hội của chúng ta. Có những chiếc điện thoại có một bộ chức năng tối thiểu và có những chiếc điện thoại “cao cấp” có những chức năng tương đương với một máy tính cá nhân.

Điện thoại di động thay thế một phần nhiều thiết bị như máy ảnh, máy tính, máy đọc sách điện tử, v.v. Thật đáng để suy nghĩ “tại sao không điều khiển một số thiết bị đơn giản bằng điện thoại của mình?” Không nên thay thế toàn bộ thiết bị mà chỉ thay thế một số điều khiển từ xa. Điều này sẽ đơn giản hóa việc điều khiển các thiết bị khác nhau trong cuộc sống hàng ngày của con người. Ví dụ: một chiếc điện thoại có chức năng Bluetooth có thể thay thế tất cả các điều khiển từ xa cho các thiết bị gia dụng thường bị mất.

Vấn đề hiện tại này sẽ được giải quyết nhờ một thiết bị tương tự được phát triển trong dự án này, ý tưởng và mục đích chính của nó là tạo ra một hệ thống điều khiển từ xa cho robot giáo dục thông qua kênh liên lạc Bluetooth.

Bluetooth là kênh liên lạc phổ biến nhất hiện nay. Nó có sẵn trên hầu hết các điện thoại và rất dễ sử dụng. Bluetooth hoặc bluetooth là thông số kỹ thuật sản xuất cho mạng khu vực cá nhân không dây. Bluetooth đảm bảo việc trao đổi thông tin giữa các thiết bị như máy tính cá nhân, điện thoại di động, máy in, máy ảnh kỹ thuật số, chuột, bàn phím, cần điều khiển, tai nghe, tai nghe nhét tai. Bluetooth cho phép các thiết bị này giao tiếp khi chúng ở trong bán kính lên tới 200 mét với nhau (phạm vi thay đổi rất nhiều tùy thuộc vào chướng ngại vật và nhiễu), ngay cả trong các phòng khác nhau.

Từ Bluetooth được dịch từ tiếng Đan Mạch là “Răng xanh”. Biệt danh này được đặt bởi Vua Harald I, người cai trị Đan Mạch và một phần Na Uy vào thế kỷ thứ 10 và thống nhất các bộ lạc Đan Mạch tham chiến thành một vương quốc duy nhất. Hàm ý là Bluetooth cũng làm như vậy với các giao thức truyền thông, kết hợp chúng thành một tiêu chuẩn chung.

Trong công việc này, một hệ thống điều khiển từ xa cho robot giáo dục đang được phát triển. Robot di động giáo dục được chế tạo trên cơ sở một chiếc ô tô điều khiển bằng sóng vô tuyến. Và điều khiển từ xa được thực hiện thông qua kênh liên lạc Bluetooth. Thiết bị truyền tín hiệu là một chiếc điện thoại có khả năng truyền thông tin qua Bluetooth và thiết bị thu là một mô-đun Bluetooth được cài đặt trên một bo mạch trong máy.

Hãy xác định robot là gì. Robot là một thiết bị cơ điện, khí nén, thủy lực hoặc kết hợp các thiết bị đó, được thiết kế để thực hiện sản xuất và các hoạt động khác thường được thực hiện bởi con người (đôi khi là động vật). Việc sử dụng robot giúp tạo điều kiện thuận lợi hoặc thậm chí thay thế sức lao động của con người.

Với sự phát triển của robot, 3 loại robot đã xuất hiện:

Với chương trình hành động chặt chẽ;

Được điều khiển bởi người vận hành;

Với trí tuệ nhân tạo, hành động có mục đích mà không cần sự can thiệp của con người.

Trong khi đó, robot không phải là sự kết hợp giữa một cỗ máy và một sinh vật sống mà là một cơ chế tự động thực hiện các công việc cụ thể không bình thường đối với các loại máy móc khác. Ví dụ, cần cẩu là máy nâng tải lên độ cao, máy tính là máy tính điện tử. Cần cẩu được điều khiển bằng máy tính có thể được gọi là robot.

Khi nói về robot, chúng ta thường tự hỏi chúng thông minh đến mức nào và liệu chúng có thể gây nguy hiểm hay mang lại lợi ích cho con người hay không. Một chủ đề thú vị, mặc dù chúng ta nên nói ở đây không phải về robot mà là về máy tính điều khiển hành động của chúng. Bản thân robot chỉ là một bộ cơ cấu chấp hành. Các lệnh di chuyển được đưa đến các bộ truyền động bằng máy tính, trong trường hợp này là điện thoại.

Để đạt được mục tiêu của dự án, các nhiệm vụ sau đã được đặt ra và giải quyết:

1) Xây dựng sơ đồ khối của thiết bị điều khiển. Sơ đồ khối hoạt động của robot di động giáo dục có hệ thống điều khiển từ xa đang được phát triển.

2) Phát triển thiết bị điều khiển vi xử lý cho động cơ DC. Một sơ đồ mạch điện đang được phát triển - lựa chọn động cơ, vi điều khiển, giao diện truyền thông. Sơ đồ mạch điện được tính toán và phát triển bảng mạch in và bản vẽ lắp ráp.

3) Xây dựng thuật toán và chương trình cho thiết bị điều khiển;

1 . Xây dựng sơ đồ khối của thiết bị điều khiển

Sơ đồ khối hệ thống

Sử dụng phần mềm được cài đặt trên điện thoại, tín hiệu sẽ được tạo và truyền đến thiết bị thu, trong trường hợp này là mô-đun Bluetooth.

Đến lượt mình, mô-đun Bluetooth sẽ nhận tín hiệu và truyền chúng đến bộ phận điều khiển chính - bộ vi điều khiển mà không cần xử lý.

Nhận thông tin, bộ vi điều khiển xử lý nó và tạo tín hiệu điều khiển cho trình điều khiển. Và thông qua bộ điều khiển, điện áp được cung cấp cho động cơ DC để chúng hoạt động.

2 . Phát triển thiết bị điều khiển vi xử lý cho động cơ DC

Trong phần này tiến hành xây dựng sơ đồ mạch điện - lựa chọn động cơ, vi điều khiển, giao diện truyền thông. Sơ đồ mạch điện được tính toán và phát triển bảng mạch in và bản vẽ lắp ráp.

Phát triển sơ đồ mạch điện

Lựa chọn động cơ

Với tư cách là đối tượng điều khiển trong công việc này, chúng tôi đã chọn các động cơ được lắp trên một chiếc ô tô điều khiển bằng sóng vô tuyến được mua riêng cho công việc.

Lựa chọn vi điều khiển

Bộ vi điều khiển Atmega8 của Atmel được chọn làm thành phần chính để nhận và xử lý tín hiệu (xem Phụ lục B). Bộ vi điều khiển có cổng UART và 3 bộ định thời, rất cần thiết cho công việc này.

Bộ xử lý tín hiệu số Atmel được sử dụng rộng rãi vì chúng có giá cả phải chăng và đủ bộ thiết bị ngoại vi.

Chọn một vi mạch và giao diện truyền thông

Để điều khiển động cơ, có sự lựa chọn giữa trình điều khiển L298N và L293D. Nhưng sự lựa chọn đã thuộc về trình điều khiển L298N. Nó hoạt động trên dải điện áp rộng hơn và do đó không có nguy cơ làm chip quá nóng. Nó cũng có thể truy cập dễ dàng và có đầy đủ các chức năng cần thiết để hoàn thành công việc.

Giao diện UART được chọn làm giao diện giao tiếp với máy tính trong dự án này. Giao diện này không được chọn một cách tình cờ vì mô-đun Bluetooth được sử dụng để truyền dữ liệu, do đó mô-đun này sử dụng giao diện UART. Một ưu điểm khác là tốc độ truyền dữ liệu tốt - 9600 Kbps.

Tính toán công suất cơ.

Trọng lượng của mô hình là 0,7 kg, tốc độ tối đa là 1 m/s với đường kính bánh xe 30 mm.

Hãy tính gia tốc:

Mô-men xoắn được tính như sau:

Tại thời điểm quán tính và gia tốc góc b =

Để tính công suất động cơ tối đa, tốc độ động cơ được sử dụng, biểu thị bằng số vòng quay trên phút:

Công suất động cơ tỷ lệ thuận với mô men xoắn và tốc độ:

Tính toán sơ đồ mạch điện

Lựa chọn trình điều khiển công suất.

Trong công việc này, chúng tôi sử dụng trình điều khiển L298N với các đặc điểm sau:

Điện áp hoạt động tối đa: Upit< Uдрайвера=46 В;

Điện áp nguồn U nguồn =+5 V, +3,3 V;

Dòng điện đầu ra tối đa (trên mỗi kênh): Ipit< Iдрайвера=2 А:

Tính toán điện trở.

Theo tài liệu kỹ thuật, chân Reset của bộ vi điều khiển được khuyến nghị kết nối với nguồn điện thông qua điện trở kéo lên có giá trị danh nghĩa là 10 kOhm.

Các điện trở để kết nối vi điều khiển và mô-đun Bluetooth được lắp đặt dựa trên tài liệu kỹ thuật của mô-đun: điện áp hoạt động 3,3 V; khi làm việc với điện áp 5 V, lắp điện trở có giá trị danh định là 4,7 kOhm.

Để hoạt động ổn định và tránh làm cháy đèn LED, dòng điện chạy trong mạch phải tương ứng với giá trị danh nghĩa (10 hoặc 20 milliamp), để làm được điều này, chúng ta lắp một điện trở có điện trở 1 kOhm.

Tính toán tụ điện.

Để ổn định điện áp đến từ nguồn điện, các tụ điện có công suất 30 μF và 100 μF được mắc song song.

Người ta đã biết rằng mô-đun Bluetooth hoạt động ở điện áp 3,3 V, do đó điện áp hoạt động trong chip 5 V sẽ quá cao, có thể dẫn đến cháy mô-đun. Vì vậy, để giảm điện áp cần kết nối ổn áp L78L33. Dựa trên tài liệu kỹ thuật của nó, cần có 2 tụ điện có công suất 0,33 μF và 0,1 μF. Sơ đồ kết nối được thể hiện trong hình.

Sơ đồ kết nối ổn áp L78L33

thiết kế PCB

Việc phát triển thiết kế thiết bị được thực hiện trên cơ sở sơ đồ mạch điện đã phát triển, có tính đến các yêu cầu về khả năng bảo trì, yêu cầu về thẩm mỹ kỹ thuật, có tính đến các điều kiện vận hành và các yêu cầu khác.

Khi thiết kế PCB, những điều sau đây phải được xem xét.

Trừ khi có bất kỳ hạn chế nào, bảng mạch in (PCB) phải có hình vuông hoặc hình chữ nhật. Kích thước tối đa của bất kỳ mặt nào không được vượt quá 520 mm. Độ dày của PP phải tương ứng với một trong các số trong dãy: 0,8; 1,0; 1,5; 2.0 tùy theo diện tích của PP.

Tâm của các lỗ phải được đặt tại các nút lưới tọa độ. Mỗi lỗ lắp và lỗ xuyên phải được che bằng một miếng đệm tiếp xúc.

Đường kính của các lỗ lắp và đường kính của dây dẫn vi mạch nằm trong khoảng từ 0,8...1,2 mm, và đường kính của dây dẫn điện trở nằm trong khoảng từ khoảng 0,66 mm. Để đơn giản hóa quá trình sản xuất, các lỗ lắp trên bo mạch có đường kính 0,8 và 1,2 mm. Khoảng cách lưới là 1,27 mm.

Hàn các phần tử bằng chất hàn POS-61. Chất liệu của bảng là lá sợi thủy tinh STEF 2-1,5-50 theo GOST 10316-86.

Phát triển bản vẽ lắp ráp

Khi lập bản vẽ lắp cần chú ý các yêu cầu sau:

1) việc phát triển bản vẽ lắp ráp thiết bị điều khiển động cơ DC được thực hiện trên cơ sở sơ đồ mạch đã phát triển, có tính đến các yêu cầu của tài liệu bản vẽ;

2) theo sơ đồ chia sản phẩm thành các bộ phận cấu thành, chỉ định ký hiệu cho bộ phận lắp ráp và các bộ phận của nó theo GOST 2.201-68;

3) nhập kích thước yêu cầu theo yêu cầu của GOST 2.109-73;

4) điền vào thông số kỹ thuật, đáp ứng tất cả các yêu cầu của GOST 2.108-68;

5) điền dòng chữ chính và hoàn thiện các dòng chữ cần thiết khác (yêu cầu kỹ thuật, v.v.).

3 . Phát triển thuật toán và chương trình cho thiết bị điều khiển

Trong phần này, chúng tôi phát triển thuật toán cho thiết bị điều khiển vi xử lý cho động cơ DC, cũng như phát triển chương trình điều khiển cho điện thoại.

Xây dựng thuật toán điều khiển thiết bị vi xử lý cho động cơ DC.

Hình 3 thể hiện sơ đồ thuật toán vận hành của thiết bị điều khiển vi xử lý.

Giá trị byte được truyền:

10:00 - Dừng lại; 01 – Chuyển tiếp; 10 - Trở lại; 11 - Dừng lại.

23:00 - Dừng lại; 01 – Đúng; 10 - Trái; 11 - Dừng lại.

Phát triển chương trình.

Xây dựng chương trình điều khiển động cơ DC.

Chương trình này là cần thiết để điều khiển động cơ DC. Bộ vi điều khiển được điều khiển bởi một chương trình từ điện thoại.

Chương trình điều khiển động cơ DC sử dụng vi điều khiển ATmega8 (xem Phụ lục A).

Xây dựng chương trình cho điện thoại.

Để chạy chương trình này, bạn phải cài đặt Windows 98/2000/ME/XP trên máy tính của mình. Chương trình này được phát triển trong môi trường SDK Android.

Các không gian tên sau đây được sử dụng cho công việc:

nhập java.io.IOException;

nhập java.io. Dòng đầu ra;

nhập java.util. Danh sách;

nhập java.util.UUID;

nhập android.app. Hoạt động;

nhập android.app. AlertDialog;

nhập android.app. ProgressDialog;

nhập android.bluetooth. Bộ chuyển đổi Bluetooth;

nhập android.bluetooth. Thiết bị Bluetooth;

nhập android.bluetooth. Ổ cắm Bluetooth;

nhập android.content. Bối cảnh;

nhập android.content. Hộp thoạiGiao diện;

nhập android.content. Ý định;

nhập android.content. DialogInterface. OnClickListener;

nhập android.hardware. Cảm biến;

nhập android.hardware. Cảm biếnSự kiện;

nhập android.hardware. Trình nghe sự kiện cảm biến;

nhập android.hardware. Trình quản lý cảm biến;

nhập android.net. Uri;

nhập android.os. Bó;

nhập android.os. Người xử lý;

nhập android.os. Tin nhắn;

nhập android.view. Bố cụcInflater;

nhập android.view. Thực đơn;

nhập android.view. Thực đơnInflater;

nhập android.view. Thực đơnMục;

nhập android.view. Sự kiện chuyển động;

nhập android.view. Xem;

nhập android.widget. Cái nút;

nhập android.widget. Chế độ xem văn bản;

nhập android.widget. Nướng;

Mục đích và điều kiện sử dụng chương trình.

Chương trình được thiết kế để tạo và truyền tín hiệu đến thiết bị vi xử lý.

Để chạy chương trình này, bạn phải có thiết bị chạy bất kỳ phiên bản hệ điều hành Android nào. Chương trình này được phát triển trong môi trường SDK Android.

Truy cập vào chương trình

Trước khi bắt đầu chương trình, bạn phải kết nối nguồn với thiết bị vi xử lý và đợi đèn LED nhấp nháy, nghĩa là thiết bị đã sẵn sàng hoạt động.

Để bắt đầu chương trình, bạn phải bật Bluetooth trên thiết bị và khởi chạy ứng dụng “BluCar”. Sử dụng nút “Kết nối với thiết bị”, thiết lập kết nối với mô-đun Bluetooth (“linvor”). Sau khi đèn LED ngừng nhấp nháy, bạn có thể bắt đầu truyền dữ liệu.

4. Hướng dẫn sử dụng

Để kiểm tra chức năng của robot di động giáo dục, bạn cần có những điều sau:

Bật nguồn cho robot di động giáo dục bằng nút hiển thị trong hình.

Nút nguồn

Đợi hai đèn LED hiển thị trong Hình 5 nhấp nháy. Đèn đầu tiên (màu trắng) được lắp vào mạch, nhấp nháy mỗi giây, cho biết mạch đã có điện và sẵn sàng hoạt động. Đèn LED thứ hai nằm trên module Bluetooth và có 2 chế độ hoạt động:

Nhấp nháy: đang chờ kết nối;

Ánh sáng ổn định: biểu thị kết nối.

Trạng thái làm việc của đèn LED

Tiếp theo, bật Bluetooth trên điện thoại và khởi chạy chương trình “BluCar” được trình bày trong Hình 6. Trong chương trình, hãy nhấp vào nút “Kết nối từ thiết bị” và từ danh sách được cung cấp, hãy chọn linvor, đây là mô-đun Bluetooth. Chúng tôi đợi cho đến khi đèn LED trên mô-đun bắt đầu sáng liên tục, điều đó có nghĩa là kết nối thành công. Robot di động giáo dục với hệ thống điều khiển từ xa đã sẵn sàng hoạt động.

Chương trình trên điện thoại "BluCar"

Phương pháp kiểm soát:

Nút “Chuyển tiếp” - di chuyển về phía trước;

Nút “Đảo ngược” - di chuyển lùi;

Xoay điện thoại trên mặt phẳng nằm ngang với cạnh phải hướng xuống - quay bánh trước sang phải;

Xoay điện thoại trên mặt phẳng nằm ngang với cạnh trái hướng xuống - quay bánh trước sang trái;

Để tắt rô-bốt di động, bạn cần tắt nguồn điện của mạch và nhấp vào nút “Ngắt kết nối khỏi thiết bị” trong chương trình.

Phần kết luận

Là kết quả của việc hoàn thành luận án cử nhân đủ điều kiện cuối cùng về chủ đề: “Phát triển hệ thống điều khiển từ xa cho robot giáo dục”, một hệ thống điều khiển từ xa cho robot giáo dục thông qua kênh liên lạc Bluetooth đã được sản xuất và tạo ra. Robot giáo dục là một cỗ máy có hai động cơ DC và một pin. Thiết bị truyền tín hiệu là một chiếc điện thoại có khả năng truyền thông tin qua Bluetooth và thiết bị thu là một mô-đun Bluetooth được cài đặt trên một bo mạch trong máy.

Vấn đề thực tế được xem xét trong dự án cho thấy rõ tầm quan trọng của thiết bị được trình bày. Thiết bị này sẽ có thể giải quyết các vấn đề rất cấp bách hàng ngày, chẳng hạn như điều khiển tất cả các thiết bị gia dụng từ điện thoại của bạn và hơn thế nữa.

Hệ thống điều khiển từ xa được tạo được thực hiện bằng vi điều khiển. Bộ vi điều khiển tốt hơn nhiều so với người tiền nhiệm của chúng. Chúng có kích thước nhỏ hơn nhiều và có năng suất cao hơn, đồng thời tăng tốc đáng kể nhiệm vụ được giao. Trong công việc này, một bộ vi điều khiển được sử dụng để xử lý các tín hiệu đến từ điện thoại. Nó còn có nhiệm vụ tạo ra tín hiệu cho bộ điều khiển động cơ khiến động cơ quay trực tiếp. Bộ vi điều khiển được lắp đặt trong một mạch điện, sau đó được lắp đặt trong máy và kết nối với động cơ.

Các kết luận trên được rút ra từ phần đầu tiên (lý thuyết). Sơ đồ khối đã được tạo.

Chương thứ hai mô tả cách phát triển một thiết bị dựa trên bộ vi xử lý để điều khiển từ xa động cơ DC.

Trong chương thứ ba, một thuật toán và chương trình điện thoại để trực quan hóa việc điều khiển động cơ DC đã được tạo ra.

Kết quả của công việc này là tất cả các mục tiêu và mục đích đặt ra đều đạt được thành công. Trong quá trình thực hiện công việc, các kỹ năng phát triển mạch điện, tính toán và bố trí mạch điện đã được củng cố. Cũng trong quá trình làm việc, kỹ năng lập trình vi điều khiển đã được cải thiện và có được kinh nghiệm lập trình trên môi trường Android.

Thư mục

1. Semenov B.Yu. Điện tử công suất dành cho người nghiệp dư và chuyên nghiệp - M.: Solon-R, 2001. -126 tr.

2. Lauren Darcy, Shane Conder: Android trong 24 giờ. Lập trình ứng dụng cho hệ điều hành Google. Ed. Nhóm Reed, 2011

3. Kasatkin A.S. Kỹ thuật điện: Sách giáo khoa. cẩm nang dành cho các trường đại học. tái bản lần thứ 4. - M.: Energoatomizdat, 1983. -440 tr., ốm.

4. Evstifeev A.V.: Bộ vi điều khiển AVR thuộc dòng Tiny và Mega của ATMEL. Nhà xuất bản Dodeka-XXI, 2008. - 558 tr.

5. Romanycheva E.T. Phát triển và thực hiện tài liệu thiết kế cho thiết bị vô tuyến điện tử. / Danh mục. M.: Đài phát thanh và truyền thông, 1989. - 448 tr.

6. Sivukhin D.V. Giáo trình vật lý đại cương: T.1. Cơ học: Sách giáo khoa vật lý ở trường đại học. - M.: Nauka, 1974. - 520 tr.

7. Horwitz P., Hill W. Nghệ thuật thiết kế vi mạch. Trong 3 tập. Mỗi. từ tiếng Anh - M.: Mir, 1993.

8. Atmel, Bộ vi điều khiển 8 bit với 16K Byte Flash có thể lập trình trong hệ thống Atmega16 - Bảng dữ liệu.

9. L298 - Trình điều khiển Full-Bridge kép - Bảng dữ liệu.

10. SERIES L78L00 - Bộ ổn áp dương - Datasheet.

11. Hướng dẫn sử dụng Giao diện UART của Bộ chuyển đổi nối tiếp Bluetooth 9600bps - Bảng dữ liệu

12. Wikipedia: Bách khoa toàn thư miễn phí. 2012. URL: http://ru.wikipedia.org. (Ngày truy cập: 20/05/2012).

Đăng trên Allbest.ru

...

Tài liệu tương tự

    Xây dựng sơ đồ khối thiết bị điều khiển robot giáo dục. Chọn một động cơ, vi điều khiển, vi mạch, giao diện truyền thông và bộ ổn định. Tính toán sơ đồ mạch điện. Phát triển bản vẽ lắp ráp thiết bị và thuật toán chương trình.

    bài tập khóa học, được thêm vào ngày 24/06/2013

    Phát triển sơ đồ mạch của thiết bị điều khiển động cơ DC dựa trên bộ vi xử lý dựa trên bộ điều khiển ATmega 128 Phát triển gói chương trình con bằng ngôn ngữ Assembler nhằm mục đích điều chỉnh và vận hành chính xác của thiết bị.

    bài tập khóa học, được thêm vào ngày 14/01/2011

    Đặc điểm thiết bị và thông số công nghệ của robot công nghiệp SM40TS. Mô tả bộ vi xử lý dòng U83-K1883, hệ thống lệnh của nó, vi mạch K572PV4, chức năng, sơ đồ mạch và thuật toán vận hành của chương trình điều khiển.

    bài tập khóa học, được thêm vào ngày 02/06/2010

    Phát triển một thiết bị vi xử lý điều khiển thực hiện tương tác cụ thể với đối tượng điều khiển, các tính năng của phần cứng và phần mềm. Phần mềm hệ thống đảm bảo thực hiện một thuật toán điều khiển nhất định.

    bài tập khóa học, được thêm vào ngày 25/10/2009

    Mục đích, phân loại và thành phần của hệ thống kiểm soát truy cập. Đặc điểm chính của phương tiện sinh trắc học nhận dạng cá nhân. Nhận dạng người dùng bằng mống mắt. Phát triển một thuật toán cho hoạt động của thiết bị.

    luận văn, bổ sung 25/11/2014

    Phân tích các hệ thống hiện có để tạo và quản lý trang web, đặc điểm chung và đánh giá chức năng của chúng ở giai đoạn hiện tại. Yêu cầu đối với phần máy chủ, phương tiện phát triển của nó. Kiểm tra giao diện. Xây dựng hướng dẫn sử dụng.

    luận văn, bổ sung ngày 11/04/2012

    Sự liên quan của nhiệm vụ. Xây dựng sơ đồ chức năng của thiết bị. Lắp đặt radar (RLU). Phần vi xử lý. Giải thích thuật toán vận hành thiết bị. Xây dựng chương trình điều khiển thiết bị. Sơ đồ thuật toán. Giải thích cho chương trình.

    bài tập khóa học, được thêm vào ngày 18/10/2007

    Phân tích các thông số kỹ thuật. Phát triển giao diện chương trình và các thuật toán của nó. Mã hóa và thử nghiệm phần mềm đã phát triển, đánh giá tính hiệu quả và chức năng thực tế của nó. Hình thức và nội dung của hướng dẫn sử dụng.

    bài tập khóa học, được thêm vào ngày 31/07/2012

    Công nghệ chiến đấu hiện đại. Phương tiện robot trong lĩnh vực quân sự. Thiết kế máy bay không người lái, robot trên mặt đất và trên biển. Phát triển một chương trình trong Prolog để thực hiện nhiệm vụ rà phá robot quân sự.

    bài tập khóa học, được thêm vào ngày 20/12/2015

    Thiết kế thiết bị vi xử lý chuyển đổi giao diện RS-232 (cổng COM) sang IEEE 1284 (cổng LPT). Sơ đồ khối của thiết bị. Chuyển đổi giao diện nối tiếp sang giao diện song song trên vi điều khiển ATMega 8.