伺服電機是機器人技術中常用的電機。與Arduino, Raspberry Pi和NodeMCU等微控制器進行接口和控制伺服電機非常容易。早些時候,我們使用Arduino Uno和ESP8266從網頁控制伺服電機。在這個項目中,我們將伺服電機與樹莓派連接,并通過托管在樹莓派上的網頁控制它。
該網頁將使用Flask Web框架創(chuàng)建樹莓派伺服電機控制。網頁將有一個滑塊和一個提交按鈕,它將發(fā)送滑塊值到樹莓派按下提交按鈕。在基于物聯(lián)網的應用中,web服務器用于使用web瀏覽器控制或監(jiān)控任何傳感器值,我們以前使用Arduino, ESP8266, NodeMCU, ESP32,樹莓派等創(chuàng)建了許多web服務器。
Flask是一個流行的Python web框架,由Pocoo的Armin Ronacher開發(fā)。它是用于開發(fā)web應用程序的第三方Python庫。Flask被歸類為微框架,它基于Pocoo項目Werkzeug和Jinja2。Flask在樹莓派上非常常用,因為樹莓派有Linux操作系統(tǒng),可以很容易地處理Python腳本。樹莓派由于其高處理能力和內置Wi-Fi功能,在創(chuàng)建web服務器和基于物聯(lián)網的項目中也很受歡迎。
組件的要求
?覆盆子π
?SG90伺服電機
?跳線
線路圖
用樹莓派控制伺服電機的電路圖如下:
這個項目的電路圖非常簡單;你需要將伺服電機連接到樹莓派上。將伺服電機的紅線接樹莓派的5V,黑線接地,黃線接GPIO 21,即樹莓派的40引腳。
安裝Flask模塊和庫
在這里,我們將使用以下命令安裝Flask模塊和庫:
首先,使用以下命令更新樹莓派
現在,安裝pip和Rpi。Gpio庫使用以下命令:
現在使用下面的命令來安裝Flask:
Python程序說明
這個伺服電機與樹莓派項目接口的完整python代碼在文檔的末尾給出。
通過導入所需的庫文件來啟動代碼。導入GPIO、Flask和sleep庫。GPIO功能使我們能夠對PI的GPIO引腳進行編程。Sleep函數用于提供延遲,Flask用于創(chuàng)建Web應用程序。
定義伺服電機連接的樹莓派GPIO引腳
將伺服引腳聲明為輸出
設置伺服電機PWM通道頻率為50 Hz
啟動PWM信號生成。
下面的命令用于從網頁中獲取滑塊值,并根據滑塊移動來移動伺服電機。
運行樹莓派Web服務器控制伺服電機
一旦你的代碼準備好了,伺服電機按照電路圖連接,打開PI來寫程序。
使用以下命令創(chuàng)建servo.py文件:
現在將給定的內容粘貼到末尾,并使用以下命令運行python代碼:
現在導航到樹莓派Web瀏覽器,輸入頁面,如下所示。
最后,移動滑塊并按下提交按鈕以旋轉伺服電機。如果向右移動滑塊,則電機將沿逆時針方向移動,如果向左移動滑塊,則電機將沿順時針方向移動
這是如何使用Python語言控制伺服步進電機。通過在路由器中啟用端口轉發(fā),您可以通過輸入ISP(互聯(lián)網服務提供商)提供的靜態(tài)IP來控制世界上任何地方的步進電機。
本文編譯自iotdesignpro