DesignSpark Electrical Logolinkedin
菜单 搜寻
提问问题

構建一個由Pi 供電的無線標籤打印機(繁體)

Raspberry PiBrother QL-700相結合,創建一個獨立的無線標籤打印機,並配備一個基於集成網絡的標籤設計器。

每個有組織的工作坊都需要標籤,並且通過添加Raspberry Pi,低成本的Brother QL-700(840-6302)可以變成一個便捷的無線標籤打印機,並配備一個基於集成網絡的標籤設計器。

QL標籤打印機

Brother QL標籤打印機具有各種配置。 QL700型號是相當小巧的,可以採用各種不同尺寸和類型的標籤庫存。 感謝來自 Philipp Klaus 的一些整潔的軟件,現在可以在不需要Brother提供的官方驅動程序支持下驅動它們,這意味著也可以使用非x86平台,例如基於ARM的Raspberry Pi。 當然,這對於螺栓固定式無線打印伺服器來說是完美的 - 還有更多!

讓我們來看看我們如何配置Pi來通過簡單的Web界面來驅動QL-700。

安裝Raspbian和依賴文件

首先我們需要將Raspbian寫入Micro SD卡。 精簡版本是完全足夠和可取的(不需要桌面軟件等)。 假設你使用Linux機器來寫出SD卡,一旦這個完成,如果你刪除並重新插入卡,使其分區掛載,我們可以編輯幾個文件。

$ sudo vi /media/<your username>/rootfs/etc/hostname

將主機名更改為易於記憶的內容,如“labels”。

$ sudo vi /media/<your username>/rootfs/etc/hosts

然後用相同的名稱更新hosts文件。

$ sudo touch /media/<your username>/boot/ssh

並創建一個告訴Raspbian啟用SSH 伺服器的文件。

當然,隨意用你選擇的文本編輯器替換vi。

如果我們現在將該卡插入我們的Raspberry Pi並提供電力,在一段時間後,我們應該可以使用mDNS來通過SSH登錄。例如:

$ ssh pi@labels.local

或者,你可以只附加一個鍵盤和顯示器。

接下來,如果我們更新系統。

$ sudo apt-get update

$ sudo apt-get dist-upgrade

然後通過以下方式安裝打包的依賴文件:

$ sudo apt-get install python3-setuptools python3-pip libopenjp2-7-dev libtiff5 git fontconfig

無線設置

如果你希望能夠通過無線連接進行打印而不是有線打印,則還需要配置WPA supplicant。如果有線以太網適合你的需求,你可以跳過這一步。

要配置Raspberry Pi加入無線網絡,我們需要編輯一個文件:

$ sudo vi /etc/wpa_supplicant/wpa_supplicant.conf

並將網絡SSID和密碼短語的配置添加到文件的底部。例如:

network={
    ssid="MyNetwork"
    psk="NetworkPassword"
}

之後如果我們保存文件並重新啟動它,它應該加入到網絡。有關更多詳細信息,請參閱 documentation on the Raspberry Pi website.

Brother QL打印機Python軟件包

 brother_ql Python 包 為該項目提供了基礎,並且可以驅動QL系列標籤打印機,而無需通常需要的打印機驅動程式。安裝光柵語言文件後,可以通過你自己的程序生成光柵語言文件或從映像文件使用提供的命令行工具。要通過PIP安裝,我們只需輸入:

$ sudo pip3 install brother_ql

在此之後,我們可以查看該工具的選項,這可創建打印機可以理解的語言文件,從圖像文件開始,通過輸入:

$ brother_ql_create --help

這些打印機的優點之一是它們採用不同尺寸的標籤,並且可以提供標籤作為單獨標籤和連續捲筒。列出支持的尺寸,我們輸入:

$ brother_ql_info list-label-sizes

有關這兩個命令選項的詳細信息,請參閱 GitHub repo.

我們使用裝有62mm寬連續捲筒的打印機,並創建了一個寬度為62mm 的PNG文件,其中包含了DesignSpark徽標並在其周圍有一個小的白色邊框

請注意,紅色背景並未出現在打印的圖像中,這只是添加了該背景以顯示圖像的大小。

打印機語言文件隨後創建:

$ brother_ql_create --model QL-700 DS_Logo_62mm-wide.png --label-size 62 > DS_Logo.bin

為了訪問打印機端口,我們需要在“lp”組中,並且我們可以通過以下方式將pi用戶帳戶添加到該端口:

$ sudo usermod -G lp -a pi

之後有必要登出並重新登錄。

最後,我們可以打印生成的.bin文件:

$ brother_ql_print DS_Logo.bin /dev/usb/lp0

根據圖像文件的大小打印標籤並剪切長度。

網頁服務標籤設計器

brother_ql的作者創建了一個非常酷的軟件,創建了一個獨立的 web-based label designer,這意味著你可以簡單地將瀏覽器與Pi連接,輸入一些文本,設置字體和標籤參數,之後打印!要安裝這個,我們要輸入:

$ mkdir src

$ cd src

$ git clone https://github.com/pklaus/brother_ql_web.git

$ cd brother_ql_web

$ sudo pip3 install -r requirements.txt

$ cp config.example.json config.json

然後需要編輯config.json來設置打印機型號,以及默認的標籤尺寸和字體等。將伺服器端口設置更改為80會帶來好處,以便你不必記住一些非標準端口號即可進入URL suffice。

在最低限度的配置之後,我們可以輸入以下指令來開始:

$ sudo python3 brother_ql_web.py

在pi上連接瀏覽器 - 例如 http://labels.local - 我們應該得到用戶界面並能夠輸入文本和打印。

最後的步驟

如果我們希望它在啟動時自動啟動,我們只需編輯/etc/rc.local,並在exit 0 line之前添加:

cd /home/pi/src/brother_ql_web; /usr/bin/python3 brother_ql_web.py&

最後,通常我們應該配置Pi,使其在啟動時以只讀方式掛載根文件系統,否則,如果在沒有正確關閉Pi的情況下切斷電源,則會導致文件系統損壞。有各種各樣的指南詳細說明如何做到這一點,但一個特別簡單的解決方案是使用rpi-readonly腳本。

$ git clone https://github.com/ways/rpi-readonly.git

$ cd rpi-readonly

$ sudo ./setup.sh

這實際上做了一些重大的改變,所以,如GitHub庫中所述,首先製作SD卡的副本是值得的。

Andrew Back

JoeLeungChiKit 还没写个人简介...

1 Jun 2018, 7:27