女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

怎樣創建樹莓派上的Web應用程序 并使用Flask Web Framework控制伺服電機

454398 ? 來源:工程師吳畏 ? 2019-07-26 15:27 ? 次閱讀

在這篇文章中,您將學習如何創建Raspberry Pi上的Web應用程序,使用Flask Web Framework控制伺服電機,以創建Web應用程序。我們將在Web應用程序上創建兩個滑塊,它們將發送相應的值,導致伺服電機在按下按鈕時移動。

Flask是一個用Python編寫并由Armin Ronacher開發的Web應用程序框架。領導一個名為Pocco的國際Python愛好者群體。 Flask基于Werkzeug WSGI工具包和Jinja2模板引擎。兩者都是Pocco項目。

先決條件

確保您的Raspberry Pi是最新的。要更新Raspberry Pi,請鍵入以下命令: sudo apt-get update

要安裝Flask,我們需要有pip,因此請鍵入以下命令來安裝pip: sudo apt-get install python-pip

然后輸入以下命令來安裝Flask: sudo pip install flask

必需組件

Raspberry Pi

SG90伺服電機

跳線電纜

電路圖和說明

這個項目的電路圖很簡單 - 你只需要連接你的兩個伺服電機。進行以下連接:

伺服電機1伺服電機2Raspberry Pi

黃色或橙色線

GPIO 26

Red Wire

5V

黑色或棕色線

GND

黃色或橙色線GPIO 19

紅線5V

黑色或棕色線GND

代碼演練

讓我們分析一下這個項目中使用的代碼。完整的代碼可以在文章的最后找到。

首先,我們導入了這個項目所需的燒瓶模塊。 render_template_string 模塊允許我們在項目中使用HTML。 請求模塊允許我們從HTML獲取數據。 RPi.GPIO 庫允許我們控制Raspberry Pi的GPIO引腳。

from flask import Flask, render_template_string, request

import RPi.GPIO as GPIO

from time import sleep

現在,我們啟用調試模式我們的項目。啟用調試模式的優點是它可以在更改代碼時自動重新加載服務器。它還提供了一個有用的調試器來跟蹤應用程序中的錯誤。

app.config[‘DEBUG’] = True

伺服電機在不動時會抖動一下。為了阻止它,我們使用以下行:

p.ChangeDutyCycle(0)

p1.ChangeDutyCycle(0)

如何運行程序

創建Python文件并上傳代碼。接下來,使用sudo命令運行此文件以在端口5000 上的localhost啟動服務器。

打開瀏覽器并輸入在https://127.0.0.1:5000中,打開一個網頁,如下所示。

現在,按提交按鈕將發送值根據我們控制的伺服電機的滑塊。

完全代碼

from flask import Flask, render_template_string, request # Importing the Flask modules required for this project

import RPi.GPIO as GPIO # Importing the GPIO library to control GPIO pins of Raspberry Pi

from time import sleep # Import sleep module from time library to add delays

# Pins where we have connected servos

servo_pin = 26

servo_pin1 = 19

GPIO.setmode(GPIO.BCM) # We are using the BCM pin numbering

# Declaring Servo Pins as output pins

GPIO.setup(servo_pin, GPIO.OUT)

GPIO.setup(servo_pin1, GPIO.OUT)

# Created PWM channels at 50Hz frequency

p = GPIO.PWM(servo_pin, 50)

p1 = GPIO.PWM(servo_pin1, 50)

# Initial duty cycle

p.start(0)

p1.start(0)

# Flask constructor takes the name of current module (__name__) as argument.

app = Flask(__name__)

# Enable debug mode

app.config[‘DEBUG’] = True

# Store HTML code

TPL = ‘’‘

Web Application to Control Servos

Slider 1

Slider 2

’‘’

# which URL should call the associated function.

@app.route(“/”)

def home():

return render_template_string(TPL)

@app.route(“/test”, methods=[“POST”])

def test():

# Get slider Values

slider1 = request.form[“slider1”]

slider2 = request.form[“slider2”]

# Change duty cycle

p.ChangeDutyCycle(float(slider1))

p1.ChangeDutyCycle(float(slider2))

# Give servo some time to move

sleep(1)

# Pause the servo

p.ChangeDutyCycle(0)

p1.ChangeDutyCycle(0)

return render_template_string(TPL)

# Run the app on the local development server

if __name__ == “__main__”:

app.run()

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Web
    Web
    +關注

    關注

    2

    文章

    1281

    瀏覽量

    70791
  • 伺服電機
    +關注

    關注

    87

    文章

    2100

    瀏覽量

    59137
  • 樹莓派
    +關注

    關注

    121

    文章

    1939

    瀏覽量

    106972
  • flask
    +關注

    關注

    0

    文章

    16

    瀏覽量

    3724
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    Web Components實踐:如何搭建一個框架無關的AI組件庫

    不同的Web應用程序中重復使用,并且具有自己的樣式、行為和功能。 Web Components并非一項新技術,而是一組持續演進的、由W3C標準化的組件化API。最早可以追溯到2011年左右,大約在2016
    的頭像 發表于 04-08 11:27 ?242次閱讀
    <b class='flag-5'>Web</b> Components實踐:如何搭建一個框架無關的AI組件庫

    人臉識別指南:如何在樹莓派上安裝和設置 Dlib

    學習如何在樹莓派上安裝Dlib配置人臉識別功能,為您的AI項目奠定基礎。在樹莓派上安裝Dlib的詳細步驟要為
    的頭像 發表于 03-24 17:31 ?577次閱讀
    人臉識別指南:如何在<b class='flag-5'>樹莓</b><b class='flag-5'>派上</b>安裝和設置 Dlib

    「極速探索HarmonyOS NEXT 」閱讀體驗】+Web組件

    \'@ohos.web.webview\'進行導入,效果一樣 @Entry@Component struct WebComponent{ //創建一個新的控制器 webviewController
    發表于 03-10 10:39

    AWTK-WEB 快速入門(6) - JS WebSocket 應用程序

    WebSocket可以實現雙向通信,適合實時通信場景。本文介紹一下使用Javacript語言開發AWTK-WEB應用程序,并用WebSocket與服務器通訊。用AWTKDesigner新建一個應用程
    的頭像 發表于 02-26 11:42 ?298次閱讀
    AWTK-<b class='flag-5'>WEB</b> 快速入門(6) - JS WebSocket <b class='flag-5'>應用程序</b>

    AWTK-WEB 快速入門(5) - C 語言 WebSocket 應用程序

    導讀WebSocket可以實現雙向通信,適合實時通信場景。本文介紹一下使用C語言開發AWTK-WEB應用程序,并用WebSocket與服務器通訊。用AWTKDesigner新建一個應用程序先安裝
    的頭像 發表于 02-19 11:49 ?373次閱讀
    AWTK-<b class='flag-5'>WEB</b> 快速入門(5) - C 語言 WebSocket <b class='flag-5'>應用程序</b>

    AWTK-WEB 快速入門(4) - JS Http 應用程序

    導讀XMLHttpRequest改變了Web應用程序與服務器交換數據的方式,fetch是其繼任者。本文介紹一下如何使用JS語言開發AWTK-WEB應用程序,并用fetch訪問遠程數據。
    的頭像 發表于 01-22 11:31 ?373次閱讀
    AWTK-<b class='flag-5'>WEB</b> 快速入門(4) - JS Http <b class='flag-5'>應用程序</b>

    SSM框架在Java開發中的應用 如何使用SSM進行web開發

    (full-stack)的應用程序框架,它提供了全面的基礎設施建設支持,能夠幫助開發者構建出企業級的應用程序。Spring的核心是控制反轉(I
    的頭像 發表于 12-16 17:28 ?1414次閱讀

    HarmonyOS Web開發性能優化指導

    20ms收益。 | 低 | - | ArrayBuffer格式的數據傳輸。 | (二)預啟動Web渲染進程 原理介紹 此方案適用于Web頁面啟動場景。開發者需額外創建一個空白的ArkWeb組件,它雖不
    發表于 12-06 08:41

    AWTK-WEB 快速入門(2) - JS 應用程序

    導讀AWTK可以使用相同的技術棧開發各種平臺的應用程序。有時我們需要使用Web界面與設備進行交互,本文介紹一下如何使用JS語言開發AWTK-WEB應用程序。用AWTKDesigner新
    的頭像 發表于 12-05 01:04 ?406次閱讀
    AWTK-<b class='flag-5'>WEB</b> 快速入門(2) - JS <b class='flag-5'>應用程序</b>

    AWTK-WEB 快速入門(1) - C 語言應用程序

    導讀AWTK可以使用相同的技術棧開發各種平臺的應用程序。有時我們需要使用Web界面與設備進行交互,本文介紹一下如何使用C語言開發AWTK-WEB應用程序。用AWTKDesigner新建
    的頭像 發表于 11-27 11:46 ?599次閱讀
    AWTK-<b class='flag-5'>WEB</b> 快速入門(1) - C 語言<b class='flag-5'>應用程序</b>

    伺服電機原理及控制應用

    伺服電機(Servo Motor)是一種高精度、高性能的電動機系統,廣泛應用于需要精確控制位置、速度和加速度的場合。 一、伺服電機的工作原理
    的頭像 發表于 10-22 16:58 ?2335次閱讀

    華納云:java web和java有什么區別java web和java有什么區別

    Java Web和Java是兩個不同的概念,它們在功能、用途和實現方式上存在一些區別,下面將詳細介紹它們之間的區別。 1. 功能和用途: – Java是一種編程語言,它提供了一種用于開發各種應用程序
    的頭像 發表于 07-16 13:35 ?1349次閱讀
    華納云:java <b class='flag-5'>web</b>和java有什么區別java <b class='flag-5'>web</b>和java有什么區別

    伺服電機也是脈沖控制嗎為什么

    伺服電機是一種高精度、高響應速度的電機,廣泛應用于工業自動化、機器人、航空航天等領域。伺服電機控制
    的頭像 發表于 07-14 10:37 ?1497次閱讀

    通過I2C PWM IC控制伺服,可以為伺服控制進行高優先級中斷嗎?

    我開始運行一個具有非常簡單的伺服控制Web 服務 我通過I2C PWM IC控制伺服, 我必須每 10 毫秒向 PWM IC 寫入新
    發表于 07-12 06:20

    鴻蒙ArkTS聲明式組件:Web

    提供具有網頁顯示能力的Web組件,[@ohos.web.webview]提供web控制能力。
    的頭像 發表于 07-04 15:35 ?1217次閱讀
    鴻蒙ArkTS聲明式組件:<b class='flag-5'>Web</b>