آموزش پروژه فول استک Raspberry Pi - آخرین آپدیت

دانلود Raspberry Pi Full Stack

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:

دوره آموزشی جامع توسعه‌ی وب‌اپلیکیشن Full-Stack بر روی Raspberry Pi

یک تور کامل و سریع در دنیای توسعه‌ی وب‌اپلیکیشن‌های Full-Stack بر روی Raspberry Pi!

آنچه در این دوره می‌آموزید:

  • نصب و راه‌اندازی سیستم‌عامل سبک Raspbian Lite بر روی RPi.
  • کار با حالت بدون مانیتور (Headless Mode).
  • نصب و استفاده از محیط مجازی Python (virtual environment).
  • نصب و استفاده از Flask، یک فریم‌ورک میکرو-وب مبتنی بر Python.
  • نصب و استفاده از uWSGI به عنوان سرور برنامه‌ی Flask.
  • نصب و استفاده از Nginx، یک وب‌سرور سبک وزن.
  • تنظیم systemd برای راه‌اندازی خودکار برنامه‌ی شما.
  • استفاده از GPIO های RPi به عنوان ورودی و خروجی دیجیتال.
  • استفاده از سنسور دما و رطوبت DHT22.
  • نصب و استفاده از پایگاه داده SQLite.
  • استفاده از Google Chart API برای ایجاد نمایش‌های بصری از داده‌های سنسور.
  • استفاده از JQuery برای افزودن تعامل به صفحات وب.
  • استفاده از Plotly برای تجزیه و تحلیل گرافیکی داده‌های سنسور.
  • اختصاص آدرس IP ثابت به Raspberry Pi شما.
  • منتشر کردن اپلیکیشن خود در اینترنت و دسترسی به آن از هر کجا.

پیش‌نیازها:

  • Raspberry Pi 4, 3, 2, model B
  • یک کامپیوتر ویندوز، مک یا لینوکس
  • سنسور DHT22
  • یک LED 5mm
  • یک دکمه فشاری
  • برد بورد و سیم‌های جامپر
  • دسترسی به اینترنت
  • (اطلاعات بیشتر در مورد الزامات سخت‌افزاری در یک سخنرانی رایگان در بخش اول دوره)

آخرین به‌روزرسانی دوره: مرداد ۱۴۰۱

ما این دوره را به‌روزرسانی کردیم تا با نسخه‌ی ۱۱ سیستم‌عامل Raspberry Pi OS ("Bullseye")، Python 3.8.13 و ماژول‌های نرم‌افزاری به‌روزرسانی‌شده در سراسر پشته (stack) کاملاً سازگار باشد.

در طراحی این به‌روزرسانی، ما تصمیم گرفتیم از آخرین ماژول‌های نرم‌افزاری موجود بدون ایجاد اختلال در هیچ بخشی از برنامه یا نیاز به تغییرات استفاده کنیم.

لطفاً ویدئوی معرفی برنامه (یکی از سخنرانی‌های رایگان در این صفحه) را برای جزئیات بیشتر تماشا کنید.

درباره‌ی این دوره:

به Raspberry Pi: Full Stack خوش آمدید، یک پروژه‌ی عملی که برای آموزش نحوه‌ی ساخت یک برنامه‌ی اینترنت اشیا (IoT) بر اساس محبوب‌ترین کامپیوتر تعبیه‌شده در جهان طراحی شده است.

این یک بازسازی به‌روز و بهبود یافته از دوره‌ی اصلی Raspberry Pi Full Stack است. در این دوره جدید، من تمام فناوری‌های دخیل در وضعیت فعلی هنر را به‌روزرسانی کرده‌ام و محتوای جدیدی نیز اضافه کرده‌ام.

این دوره شما را در معرض فرآیند کامل توسعه‌ی یک وب‌اپلیکیشن قرار می‌دهد.

شما LEDها، دکمه‌ها و سنسورها را با Javascript، HTML، سرورهای وب، سرورهای پایگاه داده، روترها و زمان‌بندها ادغام خواهید کرد.

شما درک خواهید کرد که چرا Raspberry Pi یک پلتفرم سرگرمی (tinkering) بسیار متنوع است و از نزدیک تجربه خواهید کرد که چگونه به خوبی ترکیب می‌کند:

  • سخت‌افزار باز (open hardware)، که شامل شبکه‌های بی‌سیم و سیمی و توانایی اتصال سنسورها و محرک‌ها است،
  • سیستم‌عامل قدرتمند Linux/Debian، که به شما امکان دسترسی به زبان‌های برنامه‌نویسی سطح بالا و برنامه‌های نرم‌افزاری در سطح دسکتاپ را می‌دهد،
  • و، انعطاف‌پذیری نرم‌افزار توسعه‌ی متن‌باز (open source) که، به معنای واقعی کلمه، برنامه‌های ابری را که هر روز استفاده می‌کنید، تقویت می‌کند.

همانطور که در طول بخش‌ها پیش می‌روید، یاد خواهید گرفت که چگونه یک مرحله از فرآیند توسعه‌ی برنامه را تکمیل کنید.
شما با سیستم‌عامل شروع می‌کنید، Python را اضافه می‌کنید و با برخی از سخت‌افزارهای رایج بازی می‌کنید. سپس پشته‌ی وب‌اپلیکیشن را راه‌اندازی می‌کنید و خود برنامه را نصب می‌کنید.

هنگام گذر از سخنرانی‌ها، ویژگی‌ها و اصلاحات جدید را یاد می‌گیرید و اضافه می‌کنید.

این دوره برای افرادی که حداقل درک اولیه از کامپیوترها و الکترونیک دارند، عالی است.

در حالت ایده‌آل، شما در آزمایش با Arduino تجربه دارید و با بردبورد و اجزای ساده راحت هستید.

این دوره حاوی مقدار قابل توجهی برنامه‌نویسی است. برای این کار، باید با کار با یک ویرایشگر متن راحت باشید. هرگونه دانش قبلی در مورد Python، Javascript یا سایر زبان‌های برنامه‌نویسی سطح بالا مفید خواهد بود، اگرچه کاملاً ضروری نیست.

هیچ پیش‌نیازی برای ثبت‌نام لازم نیست. من فقط از شما می‌خواهم که آماده‌ی یادگیری باشید و مایل به صرف زمان و تلاش لازم باشید.

لطفاً فراموش نکنید که سخنرانی‌های رایگان را در بخش اول دوره تماشا کنید. این سخنرانی‌ها اطلاعات دقیقی در مورد محتوای دوره و سخت‌افزاری که نیاز خواهید داشت، به شما ارائه می‌دهند.

مشتاقانه منتظر یادگیری با شما هستم!


سرفصل ها و درس ها

Introduction-مقدمه Introduction

  • 0010 - این دوره در مورد چیست 0010 - What is this course about

  • 0030 - قطعاتی که نیاز خواهید داشت 0030 - Parts you will need

  • 0060 - مخزن کد 0060 - Code repository

  • 0070 – خلاصه به‌روزرسانی دوره 0070 – Course update briefing

Get to know your Raspberry Pi-با Raspberry Pi خود آشنا شوید Get to know your Raspberry Pi

  • 0110 - مشخصات و ویژگی‌های Raspberry Pi 3 0110 - Raspberry Pi 3 specs and features

  • 0111 - مشخصات و ویژگی‌های Raspberry Pi 4 0111 - Raspberry Pi 4 specs and features

  • 0120 - مدل‌های Raspberry Pi 0120 - Raspberry Pi models

  • 0130a - مقایسه کلی Raspberry Pi و Arduino 0130a - Raspberry Pi vs Arduino high level comparison

  • 0130b - مقایسه برد‌های Raspberry Pi و Arduino 0130b - Raspberry Pi vs Arduino comparing the boards

Getting Started-شروع کار Getting Started

  • 0160 - سیستم‌عامل‌ها برای Raspberry Pi 0160 - Operating systems for the Raspberry Pi

  • 0165 - Headless در مقابل GUI 0165 - Headless vs GUI

  • Read this before you install the Raspberry Pi OS (in the next lecture)-قبل از نصب سیستم‌عامل Raspberry Pi این را بخوانید (در سخنرانی بعدی) Read this before you install the Raspberry Pi OS (in the next lecture)

  • 0170 - دانلود و نصب Raspbian Lite 0170 - Download and Install Raspbian Lite

  • 0180 - نحوه فعال‌سازی SSH و پیکربندی Wifi در حالت headless 0180 - How to enable SSH and configure Wifi in headless mode

  • 0190a - راه‌اندازی برای اولین بار و پیکربندی اولیه 0190a - Boot for the first time and basic configuration

  • 0190b - اتصال برای اولین بار با استفاده از Mac OS 0190b - Connect for the first time using Mac OS

  • 0190c - راه‌اندازی برای اولین بار و اتصال با استفاده از Windows 0190c - Boot for the first time and connection using Windows

  • 0210a - کار کردن به‌عنوان کاربر "root" 0210a - Working as the "root" user

  • 0210b - نحوه فعال‌سازی کاربر "root" برای ورود با SSH 0210b - How to enable the "root" user for logging on with SSH

How to recover from a serious glitch by backing up and restoring your SD card-چگونه از یک مشکل جدی با پشتیبان‌گیری و بازیابی کارت SD خود ریکاوری کنیم How to recover from a serious glitch by backing up and restoring your SD card

  • 0220a - پشتیبان‌گیری از کارت SD (Mac OS) 0220a - Backup an SD card (Mac OS)

  • 0220b - بازیابی کارت SD (Mac OS) 0220b - Restore an SD card (Mac OS)

  • 0220c - پشتیبان‌گیری از کارت SD (Windows) 0220c - Backup an SD card (Windows)

  • 0220d - بازیابی کارت SD (Windows) 0220d - Restore an SD card (Windows)

Pins, GPIOs, and how to control them with Python-پین‌ها، GPIO ها و نحوه کنترل آنها با Python Pins, GPIOs, and how to control them with Python

  • 0250 - هدر GPIO Raspberry Pi و سیستم شماره‌گذاری 0250 - The Rapsberry Pi GPIO header and numbering system

  • 0260a - مزه Python در مفسر خط فرمان 0260a - A taste of Python on the Command Line Interpreter

  • 0260b - مزه Python در توابع مفسر خط فرمان 0260b - A taste of Python on the Command Line Interpreter Functions

  • 0270a - مزه Python با یک برنامه ساده 0270a - A taste of Python with a simple program

  • 0280 - سیم‌کشی یک مدار ساده 0280 - Wire a simple circuit

  • 0290a - نصب برنامه نصب‌کننده Python pip 0290a - Install the Python installer program pip

  • 0290b - دستکاری یک LED با استفاده از rpi.gpio 0290b - Manipulate an LED using rpi.gpio

  • 0300 - خواندن یک دکمه 0300 - Read a button

  • 0305 - کنترل یک LED با یک دکمه 0305 - Control an LED with a button

  • Please read before you continue: DHT22 library update-لطفاً قبل از ادامه مطالعه کنید: به‌روزرسانی کتابخانه DHT22 Please read before you continue: DHT22 library update

  • 0310a - نصب Git و کتابخانه DHT 0310a - Install Git and the DHT library

  • 0310b - استفاده از سنسور DHT22 0310b - Use the DHT22 sensor

Setup the Web application Stack-راه‌اندازی Stack برنامه وب Setup the Web application Stack

  • 0340 - Stack برنامه وب 0340 - The Web Application Stack

  • 0350 - محیط مجازی Python 0350 - The Python Virtual Environment

  • 0360a - راه‌اندازی سیستم Python - آماده‌سازی 0360a - Set up system Python - preparation

  • 0360b - دانلود، کامپایل و نصب Python 3 0360b - Download, compile and install Python 3

  • 0365 - راه‌اندازی محیط مجازی برنامه Python 0365 - Setup the app Python Virtual Environment

  • 0430a - راه‌اندازی Nginx 0430a - Setup Nginx

  • 0430b - راه‌اندازی Flask 0430b - Setup Flask

  • 0435 - مروری بر یک برنامه ساده Flask 0435 - A tour of a simple Flask app

  • 0440a - نصب uWSGI 0440a - uWSGI installation

  • 0440b - پیکربندی Nginx 0440b - Nginx configuration

  • 0440c - پیکربندی USWGI 0440c - USWGI configuration

  • 0440d - آزمایش پیکربندی USWGI و Nginx 0440d - USWGI and Nginx configuration testing

Styling with Skeleton-استایل‌دهی با Skeleton Styling with Skeleton

  • 0450 - پیکربندی systemd برای راه‌اندازی خودکار uwsgi 0450 - Configure systemd to auto-start uwsgi

  • 0460a - نصب SQlite3 0460a - Install SQlite3

  • 0460b - کار با SQlite3 0460b - Working with SQlite3

  • 0470a - دارایی‌های استاتیک و CSS boilerplate Skeleton 0470a - Static assets and the Skeleton boilerplate CSS

  • 0470b - راه‌اندازی دایرکتوری دارایی‌های استاتیک 0470b - Setup the static assets directory

  • 0470c - معرفی CSS boilerplate Skeleton 0470c - Introducing the Skeleton boilerplate CSS

  • 0470d - کپی فایل‌ها با استفاده از SFTP 0470d - Copying files using SFTP

  • 0480 - قالب‌های Flask 0480 - Flask templates

  • 0497 - اشکال‌زدایی یک برنامه Flask 0497 - Debugging a Flask app

Getting started with our web application-شروع به کار با برنامه وب ما Getting started with our web application

  • 0500a - مقدمه این بخش - شروع به کار با برنامه وب ما 0500a - Introduction to the section - Getting started with our web application

  • 0500b - نصب کتابخانه DHT و ماژول rpi-gpio 0500b - Install the DHT library and the rpi-gpio module

  • 0500c - نصب کتابخانه DHT و ماژول rpi-gpio 0500c - Install the DHT library and the rpi-gpio module

  • 0510 - ایجاد یک پایگاه داده برای ذخیره داده‌های سنسور 0510 - Create a database to store sensor data

  • 0520 - اسکریپت جمع‌آوری داده‌های سنسور 0520 - Sensor data capture script

  • 0530 - زمان‌بندی خوانش‌های سنسور با cron 0530 - Schedule sensor readings with cron

  • 0540a - نمایش رکوردهای پایگاه داده در مرورگر - اسکریپت Python 0540a - Display database records in the browser - Python script

  • 0540b - نمایش رکوردهای پایگاه داده در مرورگر - قالب 0540b - Display database records in the browser - Template

Implement the date range selection feature-پیاده‌سازی ویژگی انتخاب محدوده تاریخ Implement the date range selection feature

  • 0560a - مقدمه - پیاده‌سازی ویژگی انتخاب محدوده تاریخ 0560a - Introduction - Implement the datetime range selection feature

  • 0560b - انتخاب محدوده رکوردها در SQLite 0560b - Select range of records in SQLite

  • 0570 - تنظیم محدوده تاریخ در URL و نمایش رکوردها در مرورگر 0570 - Set datetime range in URL and show records in browser

  • 0580 - اعتبارسنجی رشته Query در URL 0580 - URL querystring validation

  • 0590 - مرتب‌سازی سریع 0590 - Quick tidying up

  • 0595 - اضافه کردن دکمه‌های رادیویی برای انتخاب محدوده تاریخ و زمان سریع 0595 - Adding radio buttons for quick timedate range selection

  • 0597 - ارائه اسکریپت Python برای کار با دکمه‌های رادیویی 0597 - Provision the Python script to work with the radio buttons

Improving the user interface with Google Charts and datetime selector-بهبود رابط کاربری با Google Charts و انتخاب‌کننده تاریخ و زمان Improving the user interface with Google Charts and datetime selector

  • 0610a - مقدمه Google Charts 0610a - Introduction to Google Charts

  • 0610b - پیاده‌سازی Google Charts 0610b - Implementation of Google Charts

  • 0610c - تست Google Charts 0610c - Testing Google Charts

  • 0650a - مقدمه ویجت انتخاب‌کننده تاریخ و زمان 0650a - Introduction to the datetime picker widget

  • 0650b - پیاده‌سازی ویجت انتخاب‌کننده تاریخ و زمان 0650b - Implement the datetime picker widget

  • 0650c - آپلود و تست ویجت انتخاب‌کننده تاریخ و زمان 0650c - Upload and test the datetime picker widget

Dealing with time zones-برخورد با مناطق زمانی Dealing with time zones

  • 0665 - تنظیم تاریخ و زمان‌ها به منطقه زمانی محلی در سمت کلاینت 0665 - Adjust datetimes to local time zone on the client side

  • 0670a - مقدمه Arrow 0670a - Introduction to Arrow

  • 0670b - پیاده‌سازی Arrow 0670b - Implement Arrow

  • 0670c - آپلود تغییرات منطقه زمانی و تست 0670c - Upload timezone changes and test

  • 0680 - پیوند دو صفحه برنامه 0680 - Link the two pages of the application

Charting with Plotly-نمودارسازی با Plotly Charting with Plotly

  • Please read before you begin this section-لطفا قبل از شروع این بخش مطالعه کنید Please read before you begin this section

  • 0710a - نصب Plotly 0710a - Install Plotly

  • 0710b - امتحان Plotly در خط فرمان 0710b - Try out Plotly on the command line

  • 0720a - پیاده‌سازی پشتیبانی Plotly در سمت کلاینت 0720a - Implement Plotly support on the client side

  • 0720b - نحوه اشکال‌زدایی Javascript 0720b - How to debug Javascript

  • 0730a - اضافه کردن پشتیبانی Plotly به اسکریپت برنامه 0730a - Add Plotly support to the app script

  • 0730b - مثال اشکال‌زدایی سمت سرور 0730b - Server side debugging example

Publish on the Internet-انتشار در اینترنت Publish on the Internet

  • 0810 - تنظیم آدرس IP استاتیک 0810 - Setting a static IP address

  • 0850 - در معرض قرار دادن برنامه خود در اینترنت با port forwarding 0850 - Expose your app to the Internet with port forwarding

Conclusion and Bonus Lecture-نتیجه‌گیری و سخنرانی پاداش Conclusion and Bonus Lecture

  • 0760 - جمع‌بندی و مراحل بعدی 0760 - Recap and what's next

  • Bonus Lecture-سخنرانی پاداش Bonus Lecture

Update 2022-به‌روزرسانی 2022 Update 2022

  • 19.10 Introduction to the application update-مقدمه به‌روزرسانی برنامه 19.10 Introduction to the application update

  • 19.20 Backup and update apt packages-پشتیبان‌گیری و به‌روزرسانی بسته‌های apt 19.20 Backup and update apt packages

  • 19.30 Update system Python to 3.8.13-به‌روزرسانی سیستم Python به 3.8.13 19.30 Update system Python to 3.8.13

  • 19.40 Update Python Virtual Environment to 3.8.13-به‌روزرسانی محیط مجازی Python به 3.8.13 19.40 Update Python Virtual Environment to 3.8.13

  • 19.50 Update application Python modules-به‌روزرسانی ماژول‌های Python برنامه 19.50 Update application Python modules

  • 19.55 Update the RF24 driver-به‌روزرسانی درایور RF24 19.55 Update the RF24 driver

  • 19.60 Update Javascript, JS libraries and other assets-به‌روزرسانی Javascript، کتابخانه‌های JS و سایر دارایی‌ها 19.60 Update Javascript, JS libraries and other assets

  • 19.70 Testing the full stack app (successful)-تست برنامه full stack (موفقیت‌آمیز) 19.70 Testing the full stack app (successful)

  • 19.75 Tweak the application to work with the updated components-تنظیم برنامه برای کار با اجزای به‌روزرسانی شده 19.75 Tweak the application to work with the updated components

نمایش نظرات

آموزش پروژه فول استک Raspberry Pi
جزییات دوره
11.5 hours
102
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
14,051
4.7 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Dr Peter Dalmaris Dr Peter Dalmaris

مدرس و نویسنده "انقلاب آموزش ساز".