• HOME
  • DỰ ÁN & MẠCH ĐIỆN
    • Lập trình
      • ARDUINO PROJECT
      • ESP8266 PROJECT
      • ESP32 PROJECT
      • RASPBERRY PI PROJECT
      • Vi điều khiển
    • Điện tử ứng dụng
      • Audio / Amplifiers
      • Nguồn điện
      • Pin sạc/Acquy và mạch sạc
      • Biến đổi AC và DC
      • Robotic
      • Cảm biến
      • LED
      • LCD
      • Động cơ bước
      • Mạch linh tinh
      • Test & Measurement
      • RF – FM
    • Nixie Clock
    • HOME AUTOMATION
    • Dân dụng
    • Công nghiệp
  • KIẾN THỨC CĂN BẢN
    • Điện tử cơ bản
    • Điện tử số
    • PCB
    • Nixie Tube
    • Raspberry Pi
    • Vi điều khiển
    • Arduino
    • IN 3D
  • DOWNLOAD
    • Phần mềm điện tử
    • Giáo trình
      • Giáo trình Điện – Điện tử
      • Giáo trình Tự Động Hóa
      • Giáo trình Viễn thông
    • Đề tài
      • Đề tài – Điện – Điện Tử
      • Đề tài – Tự Động Hóa
      • Đề tài – Viễn thông
    • Điện tử ứng dụng
    • Tài liệu nước ngoài
    • Hướng dẫn, sửa chữa
    • Sơ đồ, nguyên lý thiết bị
    • Tiêu chuẩn – Đo lường – Thử nghiệm
    • Datasheet
  • LIÊN HỆ
  • SẢN PHẨM

Mạch Điện Lý Thú

Sơ đồ nguyên lý, PCB, đồ án, tài liệu, DIY

Trang chủ » Kiến thức căn bản » IN 3D » Cài đặt Octoprint lên Raspbian

Cài đặt Octoprint lên Raspbian

18/09/2023 by admin Để lại bình luận

Đã được đăng vào 19/10/2020 @ 15:03

Cài đặt Octoprint lên Raspbian

Mục lục hiện
Cài đặt Octoprint lên Raspbian
Yêu cầu phần cứng
Yêu cầu phần mềm
Cài đặt
Cài đặt octoprint
Thêm quyền sử dụng serial port cho user pi
Khởi động octoprint
Các phiên bản khác của octoprint
Cài đặt khởi động từ hệ thống
Tải và cài đặt MJPG-Streamer

Bài trước tôi đã nói về cài đặt Octoprint trên Raspberry Pi bằng file .Img và chép vào thẻ nhớ

Bài viết này tôi sẽ nói rõ hơn về việc cài đặt Octopi trên Raspbian của bạn như thế nào!


Chắc các bạn cũng đã hiểu rõ về Octoprint là gì và có thể làm những gì, và các cài đặt sử dụng cũng dễ dàng đúng không nào ở bài trước?

Ở bài này tôi sẽ hướng dẫn các bạn cài đặt trên Raspbian của bạn để các bạn có thể chủ động hơn và tuỳ chỉnh tuỳ thích nhé!

Xem thêm:

  • OctoPi điều khiển máy in 3D từ xa
  • Hướng dẫn cài hệ điều hành cho Raspberry Pi

Quan trọng: Hướng dẫn có một số kiến thức cơ bản hơn về dòng lệnh Linux. Để theo dõi, bạn cần phải biết:

  • Cách sử dụng dòng lệnh trên terminal, sách chỉnh sửa file text từ trong dòng lệnh.
  • Sự khác nhau giữa tài khoản người dùng của bạn (ví dụ: pi) và tài khoản người dùng superuser.
  • Làm thế nào để SSH vào Pi của bạn (vì có thể bạn sẽ không cần đến màn hình).
  • Cách sử dụng Git và cách sử dụng Internet để giúp bạn nếu bạn gặp vấn đề.

Yêu cầu phần cứng

  • 1 Máy in 3D
  • 1 máy tính Raspberry 3 (không nên sử dụng Pi Zero W)
  • 1 thẻ nhớ
  • 1 Picam hoặc Usb webcam(có hỗ trợ chế độ plug and play nhé)
  • Dây usb máy in (Type-B to Type-A)

Yêu cầu phần mềm

  • Python 2.7
  • MJPG-Streamer
  • Octoprint

Cài đặt

Cài đặt octoprint

cd ~

sudo apt update

sudo apt install python-pip python-dev python-setuptools python-virtualenv git libyaml-dev build-essential

mkdir OctoPrint && cd OctoPrint

virtualenv venv

source venv/bin/activate

pip install pip --upgrade

pip install https://get.octoprint.org/latest

Thêm quyền sử dụng serial port cho user pi

sudo usermod -a -G tty pi

sudo usermod -a -G dialout pi

Khởi động octoprint

pi@raspberrypi ~ $ ~/OctoPrint/venv/bin/octoprint serve

 * Running on http://yourip:5000/

 

Các phiên bản khác của octoprint

Các bạn có thể cài đặt các phiên bản khác nhau của octoprint

  • Phiên bản stable mới nhất:
source ~/OctoPrint/venv/bin/activate

pip install https://get.octoprint.org/latest
  • Phiên bản trước stable hiện tại :
source ~/OctoPrint/venv/bin/activate

pip install https://get.octoprint.org/last
  • Phiên bản Maintenance RC
source ~/OctoPrint/venv/bin/activate

pip install https://get.octoprint.org/maintenance-rc
  • Phiên bản Devel RC
source ~/OctoPrint/venv/bin/activate

pip install https://get.octoprint.org/devel-rc

Cài đặt khởi động từ hệ thống

wget https://github.com/foosel/OctoPrint/raw/master/scripts/octoprint.init && sudo mv octoprint.init /etc/init.d/octoprint

wget https://github.com/foosel/OctoPrint/raw/master/scripts/octoprint.default && sudo mv octoprint.default /etc/default/octoprint

sudo chmod +x /etc/init.d/octoprint

sudo nano /etc/default/octoprint

Bỏ comment  # cho dòng lệnh sau đây

DAEMON=/home/pi/OctoPrint/venv/bin/octoprint

Tiếp tục thực thi dòng sau:

sudo update-rc.d octoprint defaults.

Okey bây giờ reboot lại và bạn có thể bật, tắt hoặc khởi động lại Octoprint

sudo service octoprint {start|stop|restart}

Tải và cài đặt MJPG-Streamer

cd ~

sudo apt install subversion libjpeg62-turbo-dev imagemagick ffmpeg libv4l-dev cmake

git clone https://github.com/jacksonliam/mjpg-streamer.git

cd mjpg-streamer/mjpg-streamer-experimental

export LD_LIBRARY_PATH=.

Make

 

Note:

Với phiên bản Jessie các bạn chạy lệnh sau:

sudo apt install subversion libjpeg62-turbo-dev imagemagick libav-tools libv4l-dev cmake

Với bản Wheezy:

sudo apt install subversion libjpeg8-dev imagemagick libav-tools libv4l-dev cmake

Sau khi cài đặt thành công các bạn có thể khởi động stream-camera bằng lệnh sau:

./mjpg_streamer -i "./input_uvc.so" -o "./output_http.so"

Nếu các bạn sử dụng Pi Camera thì chạy lệnh sau:

./mjpg_streamer -i "./input_raspicam.so -fps 5" -o "./output_http.so"

Và nhận được kết quả như thế này:

MJPG Streamer Version: svn rev:

 i: Using V4L2 device.: /dev/video0

 i: Desired Resolution: 640 x 480

 i: Frames Per Second.: 5

 i: Format............: MJPEG

[...]

 o: www-folder-path...: disabled

 o: HTTP TCP port.....: 8080

 o: username:password.: disabled

 o: commands..........: enabled

Truy cập vào địa chỉ có cấu trúc sau: http://yourip:8080/?action=stream

Nếu đã nhận được video stream từ camera thì bạn đã cài đặt thành công!

  • Stream URL: http://yourip:8080/?action=stream
  • Snapshot URL: http://yourip:8080/?action=snapshot
  • Path to FFMPEG: /usr/bin/ffmpeg

Bật Octoprint lên và config

Chạy lệnh sau

Cd /home/pi/

Mkdir scripts

Sudo nano /home/pi/scripts/webcam

Paste vào đoạn code sau:

#!/bin/bash

# Start / stop streamer daemon

case "$1" in

    start)

        /home/pi/scripts/webcamDaemon >/dev/null 2>&1 &

        echo "$0: started"

        ;;

    stop)

        pkill -x webcamDaemon

        pkill -x mjpg_streamer

        echo "$0: stopped"

        ;;

    *)

        echo "Usage: $0 {start|stop}" >&2

        ;;

esac

chạy tiếp lệnh sau

Sudo nano /home/pi/scripts/webcamDaemon

Paste vào đoạn code sau:

#!/bin/bash

MJPGSTREAMER_HOME=/home/pi/mjpg-streamer/mjpg-streamer-experimental

MJPGSTREAMER_INPUT_USB="input_uvc.so"

MJPGSTREAMER_INPUT_RASPICAM="input_raspicam.so"

# init configuration

camera="auto"

camera_usb_options="-r 640x480 -f 10"

camera_raspi_options="-fps 10"

if [ -e "/boot/octopi.txt" ]; then

    source "/boot/octopi.txt"

fi

# runs MJPG Streamer, using the provided input plugin + configuration

function runMjpgStreamer {

    input=$1

    pushd $MJPGSTREAMER_HOME

    echo Running ./mjpg_streamer -o "output_http.so -w ./www" -i "$input"

    LD_LIBRARY_PATH=. ./mjpg_streamer -o "output_http.so -w ./www" -i "$input"

    popd

}




# starts up the RasPiCam

function startRaspi {

    logger "Starting Raspberry Pi camera"

    runMjpgStreamer "MJPGSTREAMERINPUTRASPICAMMJPGSTREAMERINPUTRASPICAMcamera_raspi_options"

}

# starts up the USB webcam

function startUsb {

    logger "Starting USB webcam"

    runMjpgStreamer "MJPGSTREAMERINPUTUSBMJPGSTREAMERINPUTUSBcamera_usb_options"

}

# we need this to prevent the later calls to vcgencmd from blocking

# I have no idea why, but that's how it is...

vcgencmd version

# echo configuration

echo camera: $camera

echo usb options: $camera_usb_options

echo raspi options: $camera_raspi_options

# keep mjpg streamer running if some camera is attached

while true; do

    if [ -e "/dev/video0" ] && { [ "camera"="auto"]||["camera"="auto"]||["camera" = "usb" ] ; }; then

        startUsb

    elif [ "`vcgencmd get_camera`" = "supported=1 detected=1" ] && { [ "camera"="auto"]||["camera"="auto"]||["camera" = "raspi" ] ; }; then

        startRaspi

    fi

    sleep 120

done

Để đảm bảo 2 file trên có quyền thực thi chạy lệnh sau:

chmod +x /home/pi/scripts/webcam

chmod +x /home/pi/scripts/webcamDaemon

Nếu bạn muốn các tùy chọn các camera khác nhau các bạn sửa trong /boot/octopi.txt

Nếu bạn muốn tự khởi động của webcam, bạn cần phải thêm dòng sau vào /etc/rc.local (Chỉ cần đảm bảo đặt nó ở trên dòng exit 0).

/home/pi/scripts/webcam start

Khởi động lại hệ thống và lấy máy khác truy cập vào URL http://yourip:5000

Nếu thấy webcam bạn đã stream được lên octoprint thì bạn đã thành công!

Nguồn: mechasolution.vn

5/5 - (2 bình chọn)
  • Share on Facebook
  • Tweet on Twitter

Thuộc chủ đề:IN 3D, Raspberry Pi, RASPBERRY PI PROJECT Tag với:3D printing, in 3D, OctoPi, raspberry pi, Raspbian

Bài viết trước « P3 – Smart Home – Ổ điện thông minh
Bài viết sau Cách đọc Datasheet của linh kiện điện tử »

Reader Interactions

Trả lời Hủy

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Sidebar chính

Zalo hỏi đáp 24/7

Theo dõi qua mạng xã hội

  • Facebook
  • RSS

Bạn đang tìm gì?

Bài viết mới nhất

Các đặc tính cơ bản ắc quy mà bạn nên biết

Các đặc tính cơ bản ắc quy mà bạn nên biết

30/09/2023

Sơ đồ mạch đuổi muỗi bằng sóng siêu âm đơn giản dễ làm

Sơ đồ mạch đuổi muỗi bằng sóng siêu âm đơn giản dễ làm

30/09/2023

Các tham số kỹ thuật đặc trưng của tụ điện và sơ đồ tương đương của tụ

Các tham số kỹ thuật đặc trưng của tụ điện và sơ đồ tương đương của tụ

30/09/2023

Các tham số kỹ thuật của cuộn cảm L

Các tham số kỹ thuật của cuộn cảm L

30/09/2023

Mạch báo mức điện áp các loại bình ắc quy điện áp từ 24V đến 60V

Mạch báo mức điện áp các loại bình ắc quy điện áp từ 24V đến 60V

30/09/2023

Chuyên mục

  • DỰ ÁN & MẠCH ĐIỆN (252)
    • Công nghiệp (16)
    • Dân dụng (28)
    • Điện tử ứng dụng (183)
      • Audio / Amplifiers (34)
      • Biến đổi AC và DC (24)
      • Cảm biến (44)
      • Động cơ bước (6)
      • Kiểm thử và đo đạc (23)
      • LCD (15)
      • LED (20)
      • Mạch linh tinh (27)
      • Nguồn điện (42)
      • Pin sạc/Acquy và mạch sạc (24)
      • RF – FM (5)
      • Robotic (2)
    • HOME AUTOMATION (28)
    • Lập trình (94)
      • ARDUINO PROJECT (39)
      • ESP32 PROJECT (6)
      • ESP8266 PROJECT (29)
      • RASPBERRY PI PROJECT (9)
      • Vi điều khiển (24)
    • Nixie Clock (3)
  • Kiến thức căn bản (170)
    • Arduino (36)
    • Điện tử cơ bản (77)
    • Điện tử số (9)
    • IN 3D (9)
    • Nixie Tube (13)
    • PCB (18)
    • Raspberry Pi (10)
    • Vi điều khiển (16)

Footer

Bài viết mới nhất

  • Các đặc tính cơ bản ắc quy mà bạn nên biết
  • Sơ đồ mạch đuổi muỗi bằng sóng siêu âm đơn giản dễ làm
  • Các tham số kỹ thuật đặc trưng của tụ điện và sơ đồ tương đương của tụ
  • Các tham số kỹ thuật của cuộn cảm L
  • Mạch báo mức điện áp các loại bình ắc quy điện áp từ 24V đến 60V
  • Sách: Arduino cho người mới bắt đầu

Bình luận mới nhất

  • admin trong Điều khiển quạt tản nhiệt tự động
  • Nguyễn mạnh trung trong Điều khiển quạt tản nhiệt tự động
  • admin trong Đồng hồ dùng GLCD Homephone V2.0 – Gà mổ thóc
  • nam trong Đồng hồ dùng GLCD Homephone V2.0 – Gà mổ thóc

Tìm kiếm

Tất cả nội dung trên website chỉ dùng để tham khảo. Chúng tôi không chịu trách nhiệm về thông tin thành viên đăng tải lên website và xóa bài viết khi có vi phạm bản quyền tác giả.