Tôi có thể chạy nhiều tập lệnh python cùng lúc Raspberry Pi không?

Trước đây tôi đã viết về cách thức và lý do tôi xây dựng một tập lệnh quét web đơn giản để thông báo cho chúng tôi về món ăn yêu thích của chúng tôi. Tôi đã theo dõi một bài đăng chi tiết cách chạy và lên lịch các tập lệnh Python trên iOS và bây giờ tôi muốn chia sẻ cách bạn có thể làm điều tương tự với Raspberry Pi

Tại sao lại là Pi?

Mặc dù có thể chơi xung quanh và kích hoạt các tập lệnh Python đơn giản trên iOS nhưng nó vẫn có những hạn chế.
Đầu tiên, bạn không thể thực sự tự động hóa việc chạy chúng. Bạn có thể kích hoạt chúng theo thời gian hoặc địa điểm, nhưng bạn sẽ phải mở khóa điện thoại của mình và nhấn OK trên mỗi lần kích hoạt.
Thứ hai, bạn không thể tận dụng một số mô-đun nâng cao hơn. Một ví dụ là Selenium, có thể tạo các phiên bản trình duyệt ảo trong nền, truy cập các trang web và thực hiện các hành động trên chúng. Điều này là không thể do kiến ​​trúc bị khóa của iOS.
Trên Pi [Linux] bạn không có giới hạn. Bạn có thể sử dụng bất kỳ mô-đun nào và lên lịch cho tập lệnh chạy hoàn toàn tự động, bất cứ khi nào bạn muốn.

Ok, nhưng Pi đang chạy Linux. Tại sao không chỉ mua và máy tính xách tay cũ chạy Linux và sử dụng thay thế?

Bạn chắc chắn có thể làm điều đó, nhưng tôi nghĩ Pi thực tế hơn nhiều. Nó có kích thước của một thẻ ngân hàng. Nếu bạn đặt nó trong một cái hộp thì nó giống PowerBank hơn. Nếu bạn giống tôi và sử dụng nó như một trung tâm mà bạn kết nối với nhiều thiết bị khác nhau, thì việc tìm một vị trí cho nó ở nhà sẽ dễ dàng hơn nhiều, nơi nó sẽ không làm hỏng tính thẩm mỹ. Ngoài ra, việc mang theo bên mình khi đi du lịch sẽ dễ dàng hơn nhiều.
Tuy nhiên, mọi thứ tôi sẽ mô tả ở đây cũng có thể được thực hiện với một máy tính xách tay giá rẻ chạy Linux, nếu bạn thích điều đó.

những bước đầu tiên

Bước đầu tiên như bạn có thể đoán là mua một chiếc Pi. Tôi khuyên bạn nên mua nó bằng thẻ SD đã cài đặt sẵn Raspbian trên đó

Ngoài ra, hãy cẩn thận vì gói tiêu chuẩn không chứa bộ đổi nguồn. Bạn có thể sử dụng nó với bộ sạc điện thoại mạnh hơn nếu bạn có thêm bất kỳ thiết bị nào xung quanh.
Đối với lần thiết lập đầu tiên, bạn cũng cần có màn hình, bàn phím và chuột.

Sau khi bạn khởi động Pi lần đầu tiên, hãy kết nối Pi với mạng cục bộ của bạn. Đây có thể là cáp hoặc qua Wifi.
Sau đó, bắt đầu và định cấu hình RealVNC [đi kèm với Raspbian] vì đây là cách thực sự thuận tiện để truy cập Pi của bạn, thậm chí từ xa. Cấu hình siêu dễ, chỉ cần đăng ký tài khoản và làm theo Wizard.
Sau khi hoàn tất, hãy sử dụng VNC Viewer trên bất kỳ thiết bị nào để đăng nhập. [Windows, Mac OS, iOS, Android]

Sau khi hoàn thành việc này, về cơ bản bạn không cần kết nối bất kỳ thiết bị ngoại vi nào với Pi nữa. Raspbian sẽ phát hiện nếu bạn khởi động nó mà không có bất kỳ màn hình, bàn phím hoặc chuột nào được kết nối và nó sẽ tự động khởi động vào cái gọi là chế độ tiêu đề. Ở chế độ tiêu đề, bạn có thể kết nối với Pi thông qua SSH hoặc qua RealVNC từ bất kỳ thiết bị nào. điện thoại, máy tính bảng, máy tính xách tay. Và không chỉ từ mạng cục bộ của bạn, mà còn từ xa

Thiết lập Pi để chạy tập lệnh Python

Được rồi, Pi của bạn đã hoạt động, bây giờ bạn chỉ cần cấu hình nó để chạy các tập lệnh Python.
Tin tốt là. không có nhiều việc phải làm nếu bạn đang sử dụng Raspbian, vì nó đã được cài đặt sẵn Python


Một điều bạn có thể làm là tải xuống phiên bản mới nhất, có thể là do Raspbian không có bản phát hành mới nhất. Đi qua con trăn. org và nâng cấp nếu cần.
Nhưng ngoài điều này, bạn vẫn ổn. Bạn có thể sao chép hiện tại của bạn. py và bắt đầu sử dụng chúng với IDE hoặc Terminal tích hợp ngay lập tức.
Nói về điều đó. nếu bạn đang sao chép các tệp bạn đã sử dụng trên Windows hoặc OS X, hãy nhớ rằng trên Linux, bạn sẽ cần một dòng shebang khác. Bạn có thể biết nơi để tìm kiếm điều này, nhưng đây là để tham khảo.

  • Trên Windows, dòng Shebang là #! python3
  • Trên OS X, dòng Shebang là #! /usr/bin/env python3
  • Trên Linux, dòng Shebang là #! /usr/bin/python3.
    [các dòng shebang là những dòng đầu tiên trong tệp tập lệnh python cho hệ thống biết vị trí của trình thông dịch]

Ngoài ra, nếu bạn muốn bắt đầu tập lệnh từ thiết bị đầu cuối, có một số bước bổ sung cần thực hiện

  • Đặt chúng. py trong thư mục nhà của bạn
  • Làm cho chúng có thể thực thi được bằng lệnh sau. chmod +x script.py
    Bây giờ bạn có thể bắt đầu một tập lệnh bằng cách nhập ./script.py vào thiết bị đầu cuối
    [Nếu bạn đặt chúng ở một nơi khác ngoài thư mục chính của mình, bạn sẽ phải mô tả toàn bộ

Tự động hóa các tập lệnh trên Pi với CRON

Bây giờ đến phần thú vị. Cho đến nay, chúng tôi đã thiết lập Pi của mình và bắt đầu chạy các tập lệnh python trên đó. Nhưng đăng nhập thông qua RealVNC hoặc SSH mỗi khi chúng tôi muốn tập lệnh chạy không thực sự thuận tiện [ngoại trừ trường hợp chúng tôi muốn tự động kích hoạt tập lệnh qua SSH đến từ một thiết bị hoặc dịch vụ khác, nhưng điều này sẽ được trình bày chi tiết trong một bài đăng khác].
Nếu chúng tôi có một tập lệnh quét web tìm kiếm một số thông tin trên web mỗi ngày và trả về một số thông tin [như trình thông báo thực phẩm được giải thích trong bài đăng trước của tôi], thì điều chúng tôi muốn là tự động hóa hoàn toàn. Tập lệnh sẽ tự bắt đầu, thực hiện công việc của mình và trả lại thông tin.
Thật may mắn là chúng ta có thể làm điều đó với một công cụ tích hợp sẵn trong Linux có tên là CRON.

Cách thiết lập CRON

  • Đăng nhập vào Pi của bạn bằng realVNC và khởi động Terminal
  • Trong Terminal, nhập crontab -e. Nếu bạn muốn lệnh chạy với quyền hệ thống, hãy sử dụng lệnh sudo crontab -e để mở tệp crontab của tài khoản gốc
  • Bạn có thể được yêu cầu chọn một trình chỉnh sửa. Nếu điều này xảy ra, hãy chọn Nano [đối với tôi đây là mặc định]
  • Bạn sẽ thấy màn hình sau.

    Mọi dòng bắt đầu bằng # chỉ là một nhận xét và sẽ không được thực thi.
  • Sử dụng các mũi tên hoặc Page Down để cuộn xuống cuối trang
  • Mỗi dòng bạn thêm vào đây sẽ được thực thi

Định dạng cho các tham số như sau.
Phút Giờ Ngày trong tháng Tháng Ngày trong tuần Lệnh
Nếu bạn muốn bỏ qua một tham số, chỉ cần thêm * làm đầu vào.

Hãy xem xét một vài ví dụ

15 9 5 7 * /home/pi/yourscript.py sẽ thực thi kịch bản của bạn. py nằm trong thư mục nhà của bạn vào ngày 5 tháng 7 hàng năm, lúc 9. 15 giờ sáng

#! /usr/bin/env python30 sẽ bắt đầu kịch bản của bạn. py vào mỗi ngày trong tuần [từ thứ Hai đến thứ Sáu] lúc 10. 30 giờ sáng

#! /usr/bin/env python31 sẽ bắt đầu kịch bản của bạn. py mỗi ngày từ ngày 1 đến ngày 10 hàng tháng, lúc 8. 00 giờ sáng

Đây là giao diện của dòng Crontab cho FoodNotifier của tôi. py.
______12
Điều này sẽ lên lịch chạy vào các ngày trong tuần lúc 11 giờ. 00 giờ sáng.

Khi bạn đã thêm dòng của mình, hãy nhấn #! /usr/bin/env python33 để viết ra và nhấn Enter để lưu.
Thoát crontab bằng #! /usr/bin/env python34

Các tham số Crontab hữu ích khác

  • Nếu bạn đang sử dụng tập lệnh đang chạy hoặc nghe liên tục và bạn muốn tập lệnh đó tắt vào một thời điểm nhất định, bạn có thể làm điều đó với tham số #! /usr/bin/env python35.
    Ví dụ. #! /usr/bin/env python36 sẽ dừng kịch bản của bạn. py lúc 13. 00 PM, vào các ngày trong tuần.
  • Có thể tắt Pi của bạn bằng tham số #! /usr/bin/env python37.
    Ví dụ. #! /usr/bin/env python38 sẽ tắt số Pi của bạn vào lúc 21 giờ thứ Bảy hàng tuần. 00 giờ chiều.

Từ cuối cùng

Tôi hy vọng hướng dẫn ngắn này đã cho bạn ý tưởng về việc thiết lập Pi và bắt đầu sử dụng nó để tự động hóa tập lệnh Python dễ dàng như thế nào.
Tôi nghĩ khả năng là vô tận.
Giống như ví dụ về Food Notifier, bạn có thể thiết lập các tập lệnh tự động kiểm tra thông tin trên web mỗi ngày và theo dõi các thay đổi hoặc thực hiện hành động đối với chúng.
Bạn có thể dễ dàng thiết lập một bot trò chuyện dựa trên python chạy liên tục, lắng nghe các câu hỏi và trả lời chúng.
Bạn cũng có thể kết nối Pi của mình với hệ thống Tự động hóa gia đình và khởi động/dừng các tiện ích trong nhà theo định kỳ hoặc từ xa từ một thiết bị.

Tất cả từ một công cụ có kích thước bằng thẻ tín dụng / PowerBank có thể đặt trên kệ bên cạnh TV của bạn

Raspberry piPythonAutomationScripts

Bài báo cáo

Thưởng thức bài viết này?

20

Chia sẻ

Gergely Kovács

Người đam mê kịch bản Python, mọt sách tự động hóa

Tôi là một người đam mê có kinh nghiệm về tự động hóa quy trình thông qua viết kịch bản. Chuyên môn của tôi là thiết kế [kiến trúc sư] và phát triển các tập lệnh VBA và Python giúp tự động hóa các tác vụ lặp đi lặp lại từ nhỏ đến phức tạp

Làm cách nào để chạy đồng thời hai chương trình Python trong Raspberry Pi?

Bạn có thể thử sử dụng os. system[] trong tập lệnh python 3d để chạy chúng đồng thời.

Nhiều tập lệnh Python có thể chạy cùng lúc không?

Có, bạn có thể chạy nhiều tập lệnh python cùng một lúc và Trong python, chúng tôi sử dụng đa luồng để chạy nhiều tác phẩm cùng lúc. Giải pháp đơn giản nhất để chạy đồng thời hai quy trình Python là chạy chúng từ tệp bash và yêu cầu từng quy trình đi vào nền bằng toán tử & shell.

PyCharm có thể chạy 2 chương trình cùng một lúc không?

PyCharm cung cấp một số cách để chạy/gỡ lỗi nhiều thứ cùng một lúc , ví dụ: ứng dụng máy khách-máy chủ hoặc thử nghiệm phức tạp, yêu cầu khởi chạy một số quy trình hoặc tác vụ khác nhau. Bước đầu tiên trong mọi trường hợp là tạo cấu hình chạy cho từng tác vụ hoặc quy trình cần được khởi chạy.

Bạn có thể chạy tập lệnh Python trên Raspberry Pi không?

Python được tích hợp sẵn trên Raspberry Pi nên bạn có thể tận dụng các kỹ năng của mình và bắt đầu xây dựng các dự án Raspberry Pi của riêng mình ngay hôm nay. Trong hướng dẫn này, bạn sẽ học cách. Thiết lập Raspberry Pi mới. Chạy Python trên Raspberry Pi bằng trình chỉnh sửa Mu hoặc từ xa qua SSH.

Chủ Đề