Thứ Sáu, 16 tháng 8, 2024

So sánh động cơ Servo loại Analog và Digital (năm 2024)

Như chúng ta đã biết có 2 loại động cơ Servo



Loại 1: Servo Analog: Servo analog là loại động cơ servo truyền thống, hoạt động dựa trên tín hiệu PWM với tần số thấp. Tín hiệu này được gửi liên tục để duy trì vị trí của động cơ. Động cơ servo analog thường có độ chính xác vừa phải và tốc độ phản hồi không quá cao, phù hợp cho các ứng dụng cơ bản như mô hình điều khiển từ xa, cửa tự động hoặc các dự án DIY với yêu cầu không quá khắt khe về độ chính xác và tốc độ. Nhờ giá thành rẻ và tiêu thụ ít điện năng, servo analog là lựa chọn phổ biến cho những người mới bắt đầu.

Chủ Nhật, 21 tháng 7, 2024

Trình gọi Ngắt (Interrupts) trong NodeMCU ESP8266

 Giả sử rằng khi bạn đang chăm chỉ làm một việc gì đó, nhưng bỗng dưng có số điện thoại người thân gọi đến với công việc quan trọng, và bạn phải tạm ngưng công việc để nghe điện thoại.

Ngắt (Interrupts) cũng thể hiểu đơn giản gần giống như vậy. Bạn có thể thiết kế một nút nhấn đặc biệt mà khi bạn nhấn nút đó thì một khối lệnh phải được thực hiện, bất kể chương trình đang làm gì.

Trong ESP8266 cú pháp hàm đó như sau:

attachInterrupt(Pin, ISR(callback function), Interrupt type/mode);

Trong đó:

Pin: là chân chỉ định nhận tín hiệu ngắt.

ISR (Callback function): Là một thủ tục (không trả về, không tham số) để thực thi một khối lệnh nào đó khi ngắt được gọi.

Interrupt type/mode: gồm

CHANGE: Khi pin thay đổi trạng thái

RISING: Khi pin thay đổi từ LOW thành HIGH

FALLING: Khi pin chuyển từ HIGH thành LOW.

Trong ví dụ sau đây, chúng ta chỉ ra chân số 2 làm chân nhận tín hiệu Ngắt. Khi bạn nhấn nút một khối lệnh được thực hiện.

Sơ đồ kết nối


Đoạn mã Arduino để nạp code cho ESP8266

// Khai báo chân Ngắt
const int chanNgat = D2;

int soLanGoiNgat = 0;

void ICACHE_RAM_ATTR HamGoiNgat(){
  soLanGoiNgat++;
  Serial.print("Số lần bạn gọi ngắt: ");
  Serial.println(soLanGoiNgat);
}

void setup() {
 Serial.begin(115200);
 attachInterrupt(digitalPinToInterrupt(chanNgat), HamGoiNgat, RISING);
}

void loop() {
  // Vòng lặp này tốn 1 giờ mới thoát ra được
  // Nhưng khi bạn nhấn nút gọi ngắt thì khối của HamGoiNgat được chạy.
  for(int i=1; i<=3600; i++){
    delay(1000);
  }
}





Chủ Nhật, 14 tháng 1, 2024

Lệnh nén file trong Linux

 Khi làm việc với máy tính nhúng từ xa, đôi khi bạn cần nén file để tải về.

Cấu trúc lệnh:

tar -czvf TenFileNen.gz <Thư Mục Cần Nén Hoặc File Cần Nén>

Ví dụ lệnh sau sẽ nén tất cả file thư mục hiện thời vào 1 file tên là Backup_now.gz

tar -czvf Backup_now.gz *



Truy cập mạng wifi bằng dòng lệnh

 Khi sử dụng máy tính nhúng thỉnh thoảng bạn cần truy cập mạng wifi bằng dòng lệnh. Khi đó bạn thực hiện lệnh sau:

sudo nmcli device wifi connect <Tên Wifi> password <Mật khẩu>

Ví dụ: Truy cập vào mạng wifi tên wifi_abc và mật khẩu 123xyz bạn gõ lệnh

sudo nmcli device wifi connect wifi_abc password 123xyz


Thứ Sáu, 12 tháng 1, 2024

Tắt giao diện đồ họa GUI cho Jetson Nano

 Khi tương tác với máy tính nhúng Jetson Nano đôi khi chúng ta chỉ cần làm việc qua dòng lệnh mà không cần giao diện đồ họa GUI.

Trong trường hợp này, nếu bạn tắt GUI đi thì sẽ tiết kiệm được một số dung lượng RAM để dành cho mục đích sử dụng khác.

Tắt giao diện đồ họa GUI đi chúng ta làm như sau:

Bước 1: Về thư mục Home bằng lệnh cd ~

Bước 2: Gõ lệnh sau:

echo "sudo systemctl set-default multi-user.target" > disbale_gui.sh

chmod +x disbale_gui.sh

Bước 3: Chạy lệnh ./disbale_gui.sh

Bước 4: Chạy lệnh sudo reboot


Mở lại giao diện đồ họa GUI

Bước 1: Về thư mục Home bằng lệnh cd ~

Bước 2: Gõ lệnh sau

echo "sudo systemctl set-default graphical.target" > enable_gui.sh

chmod +x enable_gui.sh

Bước 3: Chạy lệnh ./enable_gui.sh

Bước 4: sudo reboot


Lưu ý: Đôi khi ở chế độ tắt GUI máy không tự động đăng nhập wifi, bạn phải login vào thủ công thì mới đăng nhập wifi

Thứ Năm, 11 tháng 1, 2024

Tìm kiếm file trong linux bằng Terminal

 Khi bạn làm việc với máy tính nhúng thì công việc điều khiển từ xa qua ssh là rất thường xuyên. Lúc đó bạn không thể tương tác trực tiếp mà phải qua mạng và dòng lệnh. Việc tìm kiếm file đôi khi là rất cần thiết. Lệnh sau sẽ giúp bạn tìm kiếm dễ dàng.

Cấu pháp: find [thư mục muốn tìm] -name [tên file]

Ví dụ: bạn muốn tìm file tên Hello.py trong thư mục /home/user/FolderA thì làm như sau

find  /home/user/FolderA -name Hello*

Muốn tìm với quyền root thì bạn thêm lệnh sudo find  /home/user/FolderA -name Hello*

Còn nêu bạn muốn tìm thư mục tên Hello thì:

find  /home/user/FolderA -name Hello

 

Cài đặt màn hình PiOled cho Jetson Nano

 Màn hình PiOled có kích thước nhỏ, giúp hiển thị thông tin về địa chỉ ip, thông tin bộ nhớ và mức độ xử lý của GPU. Để cài đặt cho Jetson Nano chúng ta làm như sau:




Lưu ý: Bạn phải cài ứng dụng đọc chỉnh sửa file nano, nếu chưa cài thì cài đặt bằng lệnh

Cập nhật kho phần mềm: sudo apt update

Rồi chạy lệnh: sudo apt install nano

Bắt đầu cài đặt qua các bước sau

Bước 1: Trở về thư mục home bằng lệnh cd ~ và tiếp theo tải file từ Github bằng lệnh

git clone https://github.com/JetsonHacksNano/installPiOLED.git

Bước 2: Nếu bạn chỉ kết nối Jetson Nano bằng cáp qua mạng LAN thì bỏ bước này. Còn bạn sử dụng Card Wifi để truy cập thì chạy lệnh sau để mở file stats.py

Cài đặt Fan có PWM cho Jetson Nano

 Quạt có chức năng PWM cho Jetson Nano thì nó có thể quay theo nhiệt độ CPU, khi cpu nóng thì nó quay nhanh, khi nguội thì nó quay chậm.

Để cài đặt cho quạt quay theo nhiệt độ ta làm các bước sau:

Quạt 4 dây có chức năng PWM

Chú ý: Máy bạn phải đã cài ứng dụng chỉnh sửa file tên là nano, nếu chưa cài thì bạn về thư mục

 Home bằng lệnh cd ~ rồi cập nhật kho phần mềm: sudo apt update

chạy lệnh sudo apt install nano

Bạn cũng phải cài đặt: sudo apt install python3-dev

Thứ Tư, 27 tháng 12, 2023

Cài đặt neofetch để xem thông tin phần cứng Jetson Nano

 Bạn muốn xem chi tiết thông tin của Jetson Nano trong Terminal thì có thể cài ứng dụng này

Cập nhật kho phần mềm: sudo apt update

Lệnh cài đặt: sudo apt install neofetch

Sau khi cài đặt xong chạy lệnh neofetch để xem thông tin



Thứ Ba, 26 tháng 12, 2023

Copy, paste, cut trong ứng dụng nano của linux Ubuntu

 Khi làm việc với phần mềm nano chỉnh sửa file, bạn có thể cần lệnh copy và paste các text.

Để copy bạn làm như sau

Bước 1: di chuyển con trỏ đến vị trí bắt đầu copy, rồi ấn đồng thời 2 phím Ctrl+6

Bước 2: dùng dấu mũi tên di chuyển đến vị trí cuối muốn copy

Bước 3: Ấn Alt+6 đến copy đoạn text.

Bước 4: Di chuyển đến điểm cần paste đoạn text và ấn Ctrl+u

Lưu ý: muốn cut đoạn text thì ấn Ctrl+k

Ngoài ra muốn lưu file hiện tại bạn ấn Ctrl+o và ấn Enter

Muốn thoát thì ấn Ctrl+x