13.1.4. Chạy tập lệnh

Nút bắt đầu -- mũi tên xanh lá bên dưới nút kết nối, hoặc Ctrl+R -- gửi tập lệnh trong tab trình soạn thảo hiện tại đến camera đã kết nối và chạy nó. Trong khi tập lệnh đang chạy, nút bắt đầu chuyển thành nút dừng để dừng tập lệnh. Hai nút đó là vòng lặp cốt lõi của toàn bộ quá trình phát triển trên camera: chỉnh sửa, chạy, quan sát, dừng, rồi chỉnh sửa lại.

Có hai chi tiết quan trọng trong vòng lặp đó. Thứ nhất, tập lệnh được gửi đến RAM của camera và thực thi tại đó -- khởi động một tập lệnh không ghi bất cứ thứ gì vào bộ nhớ của camera, và tập lệnh sẽ biến mất sau khi đặt lại. Thứ hai, thứ được chạy là tab trình soạn thảo hiện tại, đúng như hiển thị, đã lưu hay chưa. Không có bước tải lên riêng biệt và không có bản sao cũ trên camera có thể không đồng bộ với trình soạn thảo của bạn.

Trong khi tập lệnh chạy, đầu ra print() của nó được truyền trực tiếp vào terminal nối tiếp và mỗi khung hình nó chụp đều hiển thị trong trình xem bộ đệm khung hình. Khi tập lệnh gặp ngoại lệ không được xử lý, traceback sẽ được in ra terminal nối tiếp và IDE nhảy đến dòng gây lỗi trong trình soạn thảo -- đối với ứng dụng nhiều tệp, IDE sẽ mở tệp được đặt tên từ ổ đĩa của camera trước.

13.1.4.1. Đặt tập lệnh thường trú

Để camera chạy tập lệnh mà không cần IDE -- khi bật nguồn, độc lập, ngoài thực địa -- hãy lưu tập lệnh trên camera với tên main.py. Tools → Save open script to OpenMV Cam (as main.py) ghi tab trình soạn thảo hiện tại vào ổ đĩa của camera với tên đó, và trong quá trình đó cho phép bạn chọn loại bỏ chú thích và nén khoảng trắng -- giúp thu nhỏ tệp nhưng tạo ra bản sao không thể đọc được -- và Tools → Reset OpenMV Cam khởi động lại camera để nó khởi động với tập lệnh đã lưu. Cùng nhau, chúng tạo thành bước triển khai: từ đó camera chạy tập lệnh của bạn bất cứ khi nào có nguồn điện, dù có IDE hay không.

Trong khi camera đã đặt lại đang chạy main.py đã lưu của nó, IDE vẫn có thể kết nối với nó -- khi Stop Script on Connect/Disconnect được bật (mặc định), việc kết nối sẽ dừng tập lệnh đã lưu và trả quyền kiểm soát lại cho trình soạn thảo.

Xem thêm

Đóng băng tập lệnh vào firmware để biết main.py có nghĩa gì trong chuỗi khởi động của camera, và để chuyển một ứng dụng đã hoàn thiện ra khỏi bộ nhớ có thể chỉnh sửa hoàn toàn.

13.1.4.2. Ổ đĩa của camera

Hệ thống tệp flash của camera (và thẻ SD, khi được lắp) được gắn trên máy chủ như một USB flash drive. Tools → Open OpenMV Cam Drive folder mở nó trong trình quản lý tệp của bạn. Đây là nơi bạn sao chép các mô-đun thư viện, tệp mô hình (ML), và các tài nguyên mà tập lệnh nhập hoặc tải, và nơi bạn lấy lại các ảnh và nhật ký mà nó đã lưu. Đường dẫn ổ đĩa cũng hiển thị trên thanh trạng thái.

Các tệp mà tập lệnh tạo ra không hiển thị ngay trên máy chủ: máy chủ lưu vào bộ nhớ đệm hệ thống tệp từ thời điểm ổ đĩa được gắn, vì vậy một ảnh chụp được lưu bởi tập lệnh đang chạy vẫn không hiển thị cho đến khi ổ đĩa được gắn lại. Tools → Reset OpenMV Cam gắn lại nó -- cách nhanh nhất để truy cập những gì tập lệnh vừa ghi.

Một lưu ý: camera và máy chủ dùng chung hệ thống tệp đó, và việc ghi đồng thời từ cả hai phía có thể làm hỏng nó. Sao chép tệp khi không có tập lệnh nào đang ghi vào bộ nhớ, và eject đúng cách trước khi rút thẻ.