Автор: Peter Dalmaris
Издательство: Elektor
Год: 2020
Страниц: 428
Язык: английский
Формат: pdf (true)
Размер: 43.7 MB
A comprehensive course that will teach you how to build a modern IoT application.
This book will take you on a whirlwind tour of full-stack web application development using Raspberry Pi. You will learn how to build an application from the ground up.
In the first section of the book, I will introduce you to the Raspberry Pi, and focus on the Raspberry Pi Zero as our base hardware platform. This base hardware represents the lowest level of the Full Stack application.
In the second section of the book, step two of the project, you will learn about the Raspbian operating system. This is the software that makes it possible for us, the application developers, to implement our application using high-level tools like the Python programming language and the SQLite3 database. You will learn that the Raspberry Pi, as a true multi-purpose computer, can work with a wide range of operating systems, including various flavours of Linux and even Microsoft Windows. In this project, you will be using a minimal version of the Raspberry Pi preferred operating system, Raspbian.
The real work begins in section four. There, you will learn about the Raspberry Pi's General Purpose Inputs and Outputs (GPIO), and how to use them with simple Python programs. I will explain how to refer to a specific GPIO and show you the basic Python commands you need to perform simple tasks, like turn an LED on and read the state of a button. All big things start with the first simple step, and for this project, the first step is to blink an LED.
In section five, you will learn about the application stack and the components and services that are present in each level. This is where you will create the framework of this project, and learn about where in the stack various back-end and front-end technologies are placed such as the Flask micro-framework for building Python web applications, the uWSGI application server, the Nginx high-performance web server, the SQLite3 database server, HTML/CSS/jаvascript/JQuery, and, of course, Internet of Things platforms like Google's various Cloud APIs, IFTTT and Plotly . Yes, you will learn how to use all of these technologies but not in one big brain dump . We'll spread the learning throughout the full project, so you can relax.
In section six, you will start building the front end of your application, and give it persistence . Persistence is the ability of an application to store data, and retrieve it later. This is where you will set up the first version of a simple Flask Python-powered web application, and give it a basic (but elegant) user interface using HTML and CSS. For persistence, you will use SQLite3, a simple yet powerful open-source database server. From section seven and onward, you are really getting into the nitty-gritty of the application development process.
In section seven, you will create the core of your application, and flesh-out that most important functions: you will implement the sensor integration so you can get readings and store them in the database, and automate measurements so that data-login begins.
To conclude this project, in Section sixteen, you will learn how to secure your application with SSL. This is important especially if you have chosen to expose your application to the Internet, as you learned in Section twelve. One you implement the security components and configuration on the web server, you will be able to access your application page with the secure HTTPS protocol instead of the un-encrypted HTTP.
You will gain experience and know-how of technologies including:
• The Linux operating system and command line.
• The Python programming language.
• The Raspberry Pi General Purpose Input Output pins (GPIOs).
• The Nginx web server.
• Flask Python web application microframework.
• JQuery and CSS for creating user interfaces.
• Dealing with time zones.
• Creating charts with Plotly and Google Charts.
• Data logging with Google Sheet.
• Developing applets with IFTTT.
• Securing your application with SSL.
• Receiving SMS notifications to your phone using Twilio.
This book will also teach you how to set up a remote wireless Arduino sensor node and collect data from it. Your Raspberry Pi web application will be able to process Arduino node data in the same way it processes data from its onboard sensor.
Raspberry Pi Full Stack will teach you many skills essential to building Web and Internet of Things applications.
The application you will build in this project is a platform that you can extend upon. This is just the start of what you can do with a Raspberry Pi and the software and hardware components that you will learn about.
Скачать Raspberry Pi Full Stack: A comprehensive course that will teach you how to build a modern IoT application