AI-POWERED DOCS
What do you want to know?
Thay Đổi Recipe qua HTTP với Node-RED
Hướng dẫn này chỉ cho bạn cách thay đổi recipe từ xa trên camera OV80i bằng các yêu cầu HTTP đơn giản. Bạn sẽ xây dựng một hệ thống cho phép bất kỳ thiết bị nào trên mạng của bạn chuyển đổi giữa các thiết lập kiểm tra khác nhau ngay lập tức - hoàn hảo cho các dây chuyền sản xuất với nhiều sản phẩm.
Điều Bạn Sẽ Xây Dựng: Một hệ thống chuyển đổi recipe từ xa phản hồi các lệnh HTTP từ máy tính bảng, máy tính, PLC, hoặc bất kỳ thiết bị nào có thể gửi yêu cầu web.
Thời Gian Dự Kiến: 15-20 phút
Mức Độ Kỹ Năng: Người Mới Bắt Đầu
Ví Dụ Thực Tế: Hãy tưởng tượng một người vận hành quét mã vạch trên máy tính bảng, và camera tự động chuyển sang recipe phù hợp cho sản phẩm đó - đó chính xác là những gì chúng ta đang xây dựng!
Tại Sao Thay Đổi Recipe qua HTTP Lại Dễ Dàng
OV80i làm cho việc chuyển đổi recipe từ xa trở nên đơn giản:
- Bất kỳ thiết bị nào cũng có thể kích hoạt - máy tính bảng, PLC, máy tính, thậm chí cả điện thoại thông minh
- Chuyển đổi tức thì - recipe thay đổi trong chưa đầy một giây
- Không cần thiết lập phức tạp - chỉ cần một vài node trong Node-RED
- Hoạt động với các hệ thống hiện có - tích hợp với những gì bạn đã có
Hoàn hảo cho: Dây chuyền đa sản phẩm, bảng điều khiển vận hành, hệ thống tự động hóa, hoặc bất cứ nơi nào bạn cần thay đổi recipe nhanh chóng.
Điều Kiện Tiên Quyết
Trước khi bắt đầu, hãy đảm bảo bạn có:
- Camera OV80i được kết nối và hoạt động
- Ít nhất 2 recipe đã được tạo và sẵn sàng sử dụng
- Quyền truy cập Node-RED (thông qua IO Block)
Bạn sẽ cần số ID recipe - những số này được tìm thấy trong thanh địa chỉ trình duyệt khi chỉnh sửa recipe.
Bước 1: Tìm Số Recipe Của Bạn
1.1 Lấy ID Recipe
- Mở bất kỳ recipe nào trong Recipe Editor
- Nhìn vào thanh địa chỉ trình duyệt
- Tìm số sau
/recipe/(ví dụ:/recipe/15có nghĩa là Recipe ID là 15) - Ghi lại các ID cho tất cả các recipe bạn muốn chuyển đổi giữa chúng
Tại sao những con số này? Mỗi recipe có một ID duy nhất không bao giờ thay đổi - đây là những gì camera sử dụng nội bộ.
Bước 2: Mở Node-RED
2.1 Truy Cập Flow Builder
- Trong bất kỳ Recipe Editor nào, nhấp vào "IO Block"
- Nhấp vào "Configure IO"
Bây giờ bạn đang ở trong Node-RED nơi chúng ta sẽ xây dựng hệ thống chuyển đổi recipe!
2.2 Lên Kế Hoạch Thiết Lập
Đây là những gì chúng ta đang xây dựng:
Button Click → Format Request → Send to Camera → See Result
Đơn giản! Camera có một máy chủ web tích hợp lắng nghe các yêu cầu thay đổi recipe.
Bước 3: Xây Dựng Trình Chuyển Đổi Recipe
3.1 Thêm Các Node Cơ Bản
Kéo 4 node này vào canvas của bạn:
- Inject (từ phần Input) - Nút "chuyển recipe" của bạn
- Function (từ phần Function) - Định dạng yêu cầu đúng cách
- HTTP Request (từ phần Network) - Gửi lệnh đến camera
- Debug (từ phần Output) - Hiển thị xem nó có hoạt động hay không
3.2 Kết Nối Chúng Lại
Nối chúng với nhau như thế này:
Inject → Function → HTTP Request → Debug
Dễ dàng! Bây giờ hãy cấu hình từng cái một.
Bước 4: Cấu Hình Các Node Của Bạn
4.1 Thiết Lập Nút Recipe Của Bạn
- Nhấp đúp vào node Inject
- Đổi tên thành "Switch to Recipe 15" (sử dụng ID recipe thực tế của bạn)
- Đặt Payload thành "15" (số ID recipe của bạn)
- Nhấp "Done"
4.2 Thiết Lập Trình Định Dạng Yêu Cầu
- Nhấp đúp vào node Function
- Đặt tên là "Format Request"
- Sao chép đoạn mã đơn giản này:
// Get recipe number from button
let recipeID = msg.payload;
// Set up the web request
msg.headers = {'Content-Type': 'application/json'};
msg.payload = JSON.stringify({ id: recipeID });
return msg;
- Nhấp "Done"
Điều này làm gì: Lấy số recipe của bạn và đóng gói nó theo cách mà camera mong đợi.
4.3 Thiết Lập HTTP Request
- Nhấp đúp vào node HTTP Request
- Đặt Method thành "POST"
- Đặt URL thành
localhost:5001/pipeline/activate - Đặt tên là "Change Recipe"
- Nhấp "Done"
Trước v18.92: sử dụng http://[CAMERA_IP]/edge/pipeline/activate
v18.92 và mới hơn: sử dụng http://localhost:5001/pipeline/activate
4.4 Thiết Lập Trình Giám Sát Phản Hồi
- Nhấp đúp vào node Debug
- Đặt tên là "Recipe Change Result"
- Nhấp "Done"
Hoàn hảo! Trình chuyển đổi recipe của bạn đã sẵn sàng để kiểm tra.
Bước 5: Kiểm Tra Trình Chuyển Đổi Recipe
5.1 Deploy và Thử
- Nhấp vào nút "Deploy" màu đỏ
- Nhấp vào nút inject của bạn (Switch to Recipe 15)
- Quan sát bảng debug để xem phản hồi
5.2 Kiểm Tra Xem Nó Có Hoạt Động Không
Dấu hiệu thành công:
- Debug hiển thị
"success": true - Giao diện camera hiển thị tên recipe mới
- Không có thông báo lỗi trong bảng debug
Nếu nó hoạt động: Chúc mừng! Bạn vừa chuyển đổi recipe từ xa.
Nếu không: Kiểm tra phần khắc phục sự cố bên dưới.
5.3 Thêm Nhiều Nút Recipe Hơn
Muốn nhiều recipe? Chỉ cần thêm nhiều node inject hơn:
- Nút Recipe 10: Payload = "10", Name = "Switch to Recipe 10"
- Nút Recipe 23: Payload = "23", Name = "Switch to Recipe 23"
- Tất cả đều kết nối với cùng một node Function
Bước 6: Sử Dụng Từ Các Thiết Bị Khác
Bây giờ là phần thú vị! Bất kỳ thiết bị nào cũng có thể thay đổi recipe bằng cách gửi yêu cầu web đến camera của bạn.
6.1 Từ Bất Kỳ Trình Duyệt Web Nào
Nhập điều này trong bất kỳ trình duyệt nào trên mạng của bạn:
http://10.250.0.100:5001/pipeline/activate
Thay thế bằng địa chỉ IP của camera.
6.2 Từ Command Line
Windows/Mac/Linux - chuyển sang recipe 15:
curl -X POST http://10.250.0.100:5001/pipeline/activate \
-H "Content-Type: application/json" \
-d '{"id": "15"}'
6.3 Từ PLC và Các Hệ Thống Khác
Hầu hết các hệ thống hiện đại đều có thể gửi yêu cầu HTTP:
- Siemens PLC: Sử dụng các khối HTTP client
- Allen-Bradley: Sử dụng các khối lệnh HTTP
- Python/C#/Java: Sử dụng các thư viện HTTP tiêu chuẩn
- Ứng dụng tùy chỉnh: Bất kỳ ngôn ngữ lập trình nào cũng hoạt động
Định dạng yêu cầu luôn giống nhau:
- Method: POST
- URL:
http://[CAMERA_IP]:5001/pipeline/activate - Body:
{"id": "RECIPE_NUMBER"}
Bước 7: Làm Cho Nó Tốt Hơn
7.1 Thêm Xác Thực Recipe
Muốn ngăn chặn chuyển sang các recipe không tồn tại? Sửa đổi function của bạn:
let recipeID = msg.payload;
let validRecipes = ["10", "15", "20"]; // Your actual recipe IDs
if (!validRecipes.includes(recipeID)) {
msg.payload = "Invalid recipe: " + recipeID;
return null; // Don't send request
}
// Normal formatting continues...
7.2 Ánh Xạ Mã Sản Phẩm
Muốn sử dụng tên sản phẩm thay vì số? Hãy thử điều này:
let productCodes = {
"BOLT_A": "10",
"BOLT_B": "15",
"SCREW_C": "20"
};
let recipeID = productCodes[msg.payload];
// Continue with formatting...
Bây giờ bạn có thể kích hoạt bằng tên sản phẩm thay vì số!
7.3 Xử Lý Phản Hồi
Muốn có thông báo thành công/lỗi tốt hơn? Thêm một function khác sau HTTP Request:
let response = JSON.parse(msg.payload);
if (response.success) {
msg.payload = "✓ Recipe changed successfully!";
} else {
msg.payload = "✗ Recipe change failed: " + response.error;
}
return msg;
Bước 8: Khắc Phục Sự Cố Nhanh
Không hoạt động? Đây là những cách khắc phục phổ biến nhất:
| Vấn Đề | Cách Khắc Phục Nhanh |
|---|---|
| Lỗi "Recipe not found" | Kiểm tra lại số ID recipe trong URL |
| Không có phản hồi nào | Xác minh địa chỉ IP camera và kết nối mạng |
| Thông báo "Parse error" | Kiểm tra mã node Function đã được sao chép chính xác |
| Recipe thực sự không thay đổi | Đảm bảo recipe tồn tại và không bị hỏng |
Vẫn bị kẹt? Kiểm tra camera của bạn đang trực tuyến và có thể truy cập từ Node-RED.
Bạn Đã Làm Được!
Chúc mừng! Bây giờ bạn đã có quyền điều khiển recipe từ xa cho camera OV80i. Chỉ với một vài cú nhấp chuột, bạn đã xây dựng một hệ thống có thể:
- Chuyển đổi recipe tức thì từ bất kỳ thiết bị nào trên mạng của bạn
- Tích hợp với các hệ thống hiện có như PLC, máy tính bảng hoặc máy tính
- Hỗ trợ nhiều recipe với các nút nhấp đơn giản
- Xác thực các yêu cầu để ngăn ngừa lỗi
- Hoạt động với các ứng dụng tùy chỉnh sử dụng công nghệ web tiêu chuẩn
Tiếp Theo Là Gì?
Bây giờ bạn đã có những điều cơ bản hoạt động, bạn có thể:
Các Bước Tiếp Theo Dễ Dàng
- Thêm nhiều nút recipe hơn cho tất cả sản phẩm của bạn
- Kiểm tra từ các thiết bị khác nhau như máy tính bảng hoặc điện thoại
- Tạo ánh xạ sản phẩm tùy chỉnh để vận hành dễ dàng hơn
Ý Tưởng Nâng Cao
- Xây dựng dashboard cho người vận hành với các nút chọn recipe
- Kết nối với máy quét mã vạch để tự động chọn recipe
- Tích hợp với hệ thống MES để điều phối dây chuyền sản xuất
- Thêm logging để theo dõi recipe nào được sử dụng khi nào
Ví Dụ Thực Tế
Đây là cách những người khác sử dụng chuyển đổi recipe qua HTTP:
- Đóng Gói Thực Phẩm: Máy quét mã vạch kích hoạt thay đổi recipe cho các kích thước bao bì khác nhau
- Ô Tô: PLC chuyển đổi recipe dựa trên loại chi tiết đi xuống dây chuyền
- Điện Tử: Máy tính bảng người vận hành với các nút recipe cho các bo mạch khác nhau
- Kiểm Soát Chất Lượng: Tự động chuyển đổi recipe dựa trên lịch trình sản xuất
Khả năng là vô tận - và tất cả bắt đầu với hệ thống đơn giản mà bạn vừa xây dựng!