Build Your Own Car Dashboard with a Raspberry Pi : Practical Projects to Build Your Own Smart Car
معرفی کتاب «Build Your Own Car Dashboard with a Raspberry Pi : Practical Projects to Build Your Own Smart Car» نوشتهٔ Lena Hendrix و Coburn, Joseph، منتشرشده توسط نشر Apress : Imprint : Apress در سال 2020. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است.
Create your own car engine control unit (ECU) with a simple Raspberry PI while building the necessary skills to produce future more advanced projects. Once you've worked through the projects in this book, you'll have a smart car and the coding knowledge needed to develop advanced hardware and software projects.Start by understanding how the Pi works, and move on to how to build hardware projects, use the GPIO pins, and install the system. Then add to that a solid understanding of software development principles and best practices, along with a good grasp of Python (v3.6+) and Python/software best practices. More than just how to code in Python, you'll learn what it takes to write production grade software, defensive code, testing, deployments, version control, and more. Internalize industry best practices while going further with valuable software development techniques such as defensive programming.The concepts introduced are essential to ensuring that software can function under unexpected circumstances. Can you imagine what would happen if your mobile phone could not cope with a call from an unknown number, or you had to set you microwave in increments of 6 seconds? While testing avoids edge cases such as these, defensive programming is one of the building blocks of software development.**What You'll Learn** * Hone test driven development in Python skills * Debug software and hardware project installations * Work with the GPIO ports of the Pi to feed your software real-world hardware information **Who This Book Is For**People who like working on cars and want to learn Raspberry Pi and software development but don’t know where to start. Table of Contents 5 About the Author 10 About the Technical Reviewer 11 Preface 12 Introduction 14 Chapter 1: Raspberry Pi History 17 A Brief History of Pi 17 Raspberry Pi 1 20 Raspberry Pi 2 21 Raspberry Pi Zero 22 Raspberry Pi 3 23 Raspberry Pi 4 24 Pi Cameras 26 Chapter Summary 27 Chapter 2: Software Development Primer 29 Types of Programming Languages 30 Data Types 33 Python 2 vs. Python 3 34 Object-Oriented Programming (OOP) 35 Classes 36 Inheritance 37 Encapsulation 37 Polymorphism 40 Design Patterns 42 SOLID Principles 44 Event-Driven Programming 47 Defensive Programming 49 1992 London Ambulance Service Computer-Aided Ambulance-Dispatch System 50 Testing 53 Therac-25 Radiation Therapy Machine 54 Test-Driven Development (TDD) 60 Debugging 61 Rubber Duck Debugging 62 Logging 63 Print Statements: The Pauper’s Logging 64 Breakpoints 64 Version Control with Git 65 Deployments 67 Chapter Summary 70 Chapter 3: Project Overview 71 Project Structure 72 The Hardware 74 Electronic Components 76 Equipment List 79 Chapter Summary 80 Chapter 4: Local Development Configuration 81 Getting Started with Python 83 Git and GitHub Repository Configuration 90 Integrated Development Environment Setup 97 Python Virtual Environment Configuration 103 Git Workflow 108 Pull Requests 114 Repository Rules 119 Pipeline Configuration 123 Git Cheat Sheet 133 Chapter Summary 134 Chapter 5: Raspberry Pi Initial Configuration 135 Install an Operating System on Your Memory Card 136 Boot the Pi for the First Time 142 Configure SSH 146 Pi Python Setup 150 Cloning the Repository 152 Keeping Code Updated 155 Chapter Summary 157 Chapter 6: Getting Started with Flask 158 First Flask Config 159 Running Flask on the Pi 176 Autostart Flask When the Pi Boots 182 Chapter Summary 185 Chapter 7: Temperature Monitoring 186 Hardware Configuration 186 Pi Configuration 192 Flask Temperature Sensor Logic 192 Chapter Summary 201 Chapter 8: Boot Sensor 202 Hardware Configuration 202 Flask Boot Sensor Logic 205 First Unit Tests 211 Chapter Summary 221 Chapter 9: Light Sensor 222 Hardware Configuration 222 Test-Driven Development Light Sensor Tests 224 Flask Light Sensor Logic 228 Chapter Summary 232 Chapter 10: Fog and Reverse Sensors 233 Hardware Configuration 233 Fog and Reverse Sensors Logic 237 Chapter Summary 242 Chapter 11: Reversing Camera 244 Camera Connection 245 Pi Camera First Time Configuration 248 Camera Live Stream Configuration 250 Pi Camera Focus Adjustment 254 Camera Flask Code 256 Chapter Summary 260 Chapter 12: Reversing Beeper 261 Piezo Connection 261 Piezo Flask Logic 263 Chapter Summary 267 Chapter 13: Distance Sensor 268 Distance Sensor Theory 268 Distance Sensor Hardware 269 Distance Sensor Flask Code 272 Chapter Summary 274 Chapter 14: System Polishing 275 Basic Dashboard Layout 276 Autoload the Pi’s Web Browser 289 Show Sensor Data 292 Reversing Module Completion 295 Final Pi Improvements 302 Index 307 Create your own car engine control unit (ECU) with a simple Raspberry PI while building the necessary skills to produce future more advanced projects. Once you've worked through the projects in this book, you'll have a smart car and the coding knowledge needed to develop advanced hardware and software projects. Start by understanding how the Pi works, and move on to how to build hardware projects, use the GPIO pins, and install the system. Then add to that a solid understanding of software development principles and best practices, along with a good grasp of Python (v3.6+) and Python/software best practices. More than just how to code in Python, you'll learn what it takes to write production grade software, defensive code, testing, deployments, version control, and more. Internalize industry best practices while going further with valuable software development techniques such as defensive programming. The concepts introduced are essential to ensuring that software can function under unexpected circumstances. Can you imagine what would happen if your mobile phone could not cope with a call from an unknown number, or you had to set you microwave in increments of 6 seconds? While testing avoids edge cases such as these, defensive programming is one of the building blocks of software development. What You'll Learn Hone test driven development in Python skills Debug software and hardware project installations Work with the GPIO ports of the Pi to feed your software real-world hardware information Who This Book Is For People who like working on cars and want to learn Raspberry Pi and software development but don’t know where to start. "Create your own car engine control unit (ECU) with a simple Raspberry PI while building the necessary skills to produce future more advanced projects. Once you've worked through the projects in this book, you'll have a smart car and the coding knowledge needed to develop advanced hardware and software projects. Start by understanding how the Pi works, and move on to how to build hardware projects, use the GPIO pins, and install the system. Then add to that a solid understanding of software development principles and best practices, along with a good grasp of Python (v3.6+) and Python/software best practices. More than just how to code in Python, you'll learn what it takes to write production grade software, defensive code, testing, deployments, version control, and more. Internalize industry best practices while going further with valuable software development techniques such as defensive programming. The concepts introduced are essential to ensuring that software can function under unexpected circumstances. Can you imagine what would happen if your mobile phone could not cope with a call from an unknown number, or you had to set you microwave in increments of 6 seconds? While testing avoids edge cases such as these, defensive programming is one of the building blocks of software development. You will: Hone test driven development in Python skills, debug software and hardware project installations, work with the GPIO ports of the Pi to feed your software real-world hardware information."-- Provided by publisher
دانلود کتاب Build Your Own Car Dashboard with a Raspberry Pi : Practical Projects to Build Your Own Smart Car