ABE-IPSABE HOLDINGABE BOOKS
English Polski
Dostęp on-line

Książki

0.00 PLN
Schowek (0) 
Schowek jest pusty
Exploring Arduino - Tools and Techniques for Engineering Wizardry Second Edition

Exploring Arduino - Tools and Techniques for Engineering Wizardry Second Edition

Autorzy
Wydawnictwo John Wiley & Sons Inc
Data wydania 05/12/2019
Liczba stron 512
Forma publikacji książka w miękkiej oprawie
Poziom zaawansowania Dla profesjonalistów, specjalistów i badaczy naukowych
Język angielski
ISBN 9781119405375
Kategorie Inżynieria elektryczna
177.45 PLN (z VAT)
$39.92 / €38.05 / £33.03 /
Produkt na zamówienie
Dostawa 3-4 tygodnie
Ilość
Do schowka

Opis książki

The bestselling beginner Arduino guide, updated with new projects! Exploring Arduino makes electrical engineering and embedded software accessible. Learn step by step everything you need to know about electrical engineering, programming, and human-computer interaction through a series of increasingly complex projects. Arduino guru Jeremy Blum walks you through each build, providing code snippets and schematics that will remain useful for future projects. Projects are accompanied by downloadable source code, tips and tricks, and video tutorials to help you master Arduino. You'll gain the skills you need to develop your own microcontroller projects! This new 2nd edition has been updated to cover the rapidly-expanding Arduino ecosystem, and includes new full-color graphics for easier reference. Servo motors and stepper motors are covered in richer detail, and you'll find more excerpts about technical details behind the topics covered in the book. Wireless connectivity and the Internet-of-Things are now more prominently featured in the advanced projects to reflect Arduino's growing capabilities.
You'll learn how Arduino compares to its competition, and how to determine which board is right for your project. If you're ready to start creating, this book is your ultimate guide! * Get up to date on the evolving Arduino hardware, software, and capabilities * Build projects that interface with other devices wirelessly! * Learn the basics of electrical engineering and programming * Access downloadable materials and source code for every project Whether you're a first-timer just starting out in electronics, or a pro looking to mock-up more complex builds, Arduino is a fantastic tool for building a variety of devices. This book offers a comprehensive tour of the hardware itself, plus in-depth introduction to the various peripherals, tools, and techniques used to turn your little Arduino device into something useful, artistic, and educational. Exploring Arduino is your roadmap to adventure start your journey today!

Exploring Arduino - Tools and Techniques for Engineering Wizardry Second Edition

Spis treści

Introduction xxv





Part I Arduino Engineering Basics 1





1 Getting Started and Understanding the Arduino Landscape 3





Exploring the Arduino Ecosystem 4





Arduino Functionality 5





The Microcontroller 7





Programming Interfaces 8





Input/Output: GPIO, ADCs, and Communication Busses 9





Power 9





Arduino Boards 11





Creating Your First Program 15





Downloading and Installing the Arduino IDE 16





Running the IDE and Connecting to the Arduino 17





Breaking Down Your First Program 18





Summary 21





2 Digital Inputs, Outputs, and Pulse-Width Modulation 23





Digital Outputs 24





Wiring Up an LED and Using Breadboards 24





Working with Breadboards 24





Wiring LEDs 25





Programming Digital Outputs 29





Using For Loops 30





Pulse-Width Modulation with analogWrite() 31





Reading Digital Inputs 35





Reading Digital Inputs with Pull-Down Resistors 35





Working with "Bouncy" Buttons 38





Building a Controllable RGB LED Nightlight 42





Summary 46





3 Interfacing with Analog Sensors 47





Understanding Analog and Digital Signals 48





Comparing Analog and Digital Signals 48





Converting an Analog Signal to Digital 49





Reading Analog Sensors with the Arduino: analogRead() 51





Reading a Potentiometer 51





Using Analog Sensors 56





Using Variable Resistors to Make Your Own Analog Sensors 60





Using Resistive Voltage Dividers 61





Using Analog Inputs to Control Analog Outputs 64





Summary 66





Part II Interfacing with Your Environment 67





4 Using Transistors and Driving DC Motors 69





Driving DC Motors 70





Handling High-Current Inductive Loads 71





Using Transistors as Switches 72





Using Protection Diodes73





Using a Secondary Power Source 74





Wiring the Motor 74





Controlling Motor Speed with PWM 76





Using an H-Bridge to Control DC Motor Direction 78





Building an H-Bridge Circuit 80





Operating an H-Bridge Circuit 82





Building a Roving Robot 86





Choosing the Robot Parts 87





Selecting a Motor and Gearbox 87





Powering Your Robot 87





Constructing the Robot 89





Writing the Robot Software 92





Bringing It Together 96





Summary 97





5 Driving Stepper and Servo Motors 99





Driving Servo Motors 100





Understanding the Difference between Continuous Rotation and Standard Servos 100





Understanding Servo Control 101





Controlling a Servo 104





Building a Sweeping Distance Sensor 105





Understanding and Driving Stepper Motors 109





How Bipolar Stepper Motors Work 111





Making Your Stepper Move 113





Building a "One-Minute Chronograph" 117





Wiring and Building the Chronograph 117





Programming the Chronograph 119





Summary 124





6 Making Sounds and Music 125





Understanding How Speakers Work 126





The Properties of Sound 126





How a Speaker Produces Sound 128





Using tone() to Make Sounds 129





Including a Definition File 129





Wiring the Speaker 130





Making Sound Sequences 133





Using Arrays 133





Making Note and Duration Arrays 134





Completing the Program 134





Understanding the Limitations of the tone() Function 136





Building a Micro Piano 136





Summary 139





7 USB Serial Communication 141





Understanding the Arduino's Serial Communication Capabilities 142





Arduino Boards with an Internal or External FTDI or Silicon Labs USB-to-Serial Converter 143





Arduino Boards with a Secondary USB-Capable ATmega MCU Emulating a Serial Converter 146





Arduino Boards with a Single USB-Capable MCU 147





Arduino Boards with USB-Host Capabilities 147





Listening to the Arduino 148





Using print Statements 148





Using Special Characters 150





Changing Data Type Representations 152





Talking to the Arduino 152





Configuring the Arduino IDE's Serial Monitor to Send Command Strings 152





Reading Incoming Data from a Computer or Other Serial Device 153





Telling the Arduino to Echo Incoming Data 153





Understanding the Differences between Chars and Ints 154





Sending Single Characters to Control an LED 156





Sending Lists of Values to Control an RGB LED 158





Talking to a Desktop App 161





Installing Processing 162





Controlling a Processing Sketch from Your Arduino 163





Sending Data from Processing to Your Arduino 166





Summary 169





8 Emulating USB Devices 171





Emulating a Keyboard 173





Typing Data into the Computer 173





Commanding Your Computer to Do Your Bidding 177





Emulating a Mouse 178





Summary 182





9 Shift Registers 183





Understanding Shift Registers 184





Sending Parallel and Serial Data 185





Working with the 74HC595 Shift Register 186





Understanding the Shift Register pin Functions 186





Understanding How the Shift Register Works 187





Shifting Serial Data from the Arduino 189





Converting Between Binary and Decimal Formats 192





Controlling Light Animations with a Shift Register 192





Building a "Light Rider" 192





Responding to Inputs with an LED Bar Graph 194





Summary 197





Part III Communication Interfaces 199





10 The I2C Bus 201





History of the I2C Bus 202





I2C Hardware Design 203





Communication Scheme and ID Numbers 203





Hardware Requirements and Pull-Up Resistors 206





Communicating with an I2C Temperature Probe 208





Setting Up the Hardware208





Referencing the Datasheet 210





Writing the Software 212





Combining Shift Registers, Serial Communication, and I2C Communications 214





Building the Hardware for a Temperature Monitoring System 214





Modifying the Embedded Program 215





Writing the Processing Sketch 218





Summary 221





11 The SPI Bus and Third-Party Libraries 223





Overview of the SPI Bus 224





SPI Hardware and Communication Design 225





Hardware Configuration 225





Communication Scheme 227





Comparing SPI to I2C and UART 227





Communicating with an SPI Accelerometer 228





What is an Accelerometer? 229





Gathering Information from the Datasheet 231





Setting Up the Hardware233





Writing the Software 235





Installing the Adafruit Sensor Libraries 236





Leveraging the Library 237





Creating an Audiovisual Instrument Using a 3-Axis Accelerometer 241





Setting Up the Hardware242





Modifying the Software 242





Summary 246





12 Interfacing with Liquid Crystal Displays 247





Setting Up the LCD 248





Using the LiquidCrystal Library to Write to the LCD 251





Adding Text to the Display 252





Creating Special Characters and Animations 254





Building a Personal Thermostat 258





Setting Up the Hardware 258





Displaying Data on the LCD 261





Adjusting the Set Point with a Button 264





Adding an Audible Warning and a Fan 265





Bringing It All Together: The Complete Program 266





Taking This Project to the Next Level 270





Summary 271





Part IV Digging Deeper and Combining Functions 273





13 Interrupts and Other Special Functions 275





Using Hardware Interrupts 276





Knowing the Tradeoffs Between Polling and Interrupting 277





Ease of Implementation (Software) 277





Ease of Implementation (Hardware) 277





Multitasking 278





Acquisition Accuracy 278





Understanding the Arduino Hardware Interrupt Capabilities 278





Building and Testing a Hardware-Debounced Button Interrupt Circuit 279





Creating a Hardware-Debouncing Circuit 280





Assembling the Complete Test Circuit 284





Writing the Software 285





Using Timer Interrupts 288





Understanding Timer Interrupts 288





Getting the Library 289





Executing Two Tasks Simultaneously(ish) 289





Building an Interrupt-Driven Sound Machine 290





Sound Machine Hardware 291





Sound Machine Software 291





Summary 294





14 Data Logging with SD Cards 295





Getting Ready for Data Logging 296





Formatting Data with CSV Files 297





Preparing an SD Card for Data Logging 297





Formatting Your SD Card Using a Windows PC 298





Formatting Your SD Card Using Mac OS 300





Formatting Your SD Card Using Linux 302





Interfacing the Arduino with an SD Card 304





SD Card Shields 304





SD Card SPI Interface 307





Writing to an SD Card 307





Reading from an SD Card 312





Real-Time Clocks 317





Understanding Real-Time Clocks 317





Communicating with a Real-Time Clock 317





Using the RTC Arduino Third-Party Library 318





Using a Real-Time Clock 319





Installing the RTC and SD Card Modules 319





Updating the Software 320





Building an Entrance Logger 327





Logger Hardware 328





Logger Software 329





Data Analysis 334





Summary 335





Part V Going Wireless 337





15 Wireless RF Communications 339





The Electromagnetic Spectrum 340





The Spectrum 342





How Your RF Link Will Send and Receive Data 343





Receiving Key Presses with the RF Link 346





Connecting Your Receiver 346





Programming Your Receiver 347





Making a Wireless Doorbell 351





Wiring the Receiver 351





Programming the Receiver 351





The Start of Your Smart Home-Controlling a Lamp 354





Your Home's AC Power 356





How a Relay Works 356





Programming the Relay Control 358





Hooking up Your Lamp and Relay to the Arduino 360





Summary 361





16 Bluetooth Connectivity 363





Demystifying Bluetooth 364





Bluetooth Standards and Versions 364





Bluetooth Profiles and BTLE GATT Services 365





Communication between Your Arduino and Your Phone 366





Reading a Sensor over BTLE 366





Adding Support for Third-Party Boards to the Arduino IDE 367





Installing the BTLE Module Library 369





Programming the Feather Board 369





Connecting Your Smartphone to Your BTLE Transmitter 377





Sending Commands from Your Phone over BTLE 379





Parsing Command Strings 380





Commanding Your BTLE Device with Natural Language 384





Controlling an AC Lamp with Bluetooth 389





How Your Phone "Pairs" to BTLE Devices 389





Writing the Proximity Control Software 390





Pairing Your Phone 394





Pairing an Android Phone 394





Pairing an iPhone 395





Make Your Lamp React to Your Presence 396





Summary 397





17 Wi-Fi and the Cloud 399





The Web, the Arduino, and You 400





Networking Lingo 401





The Internet vs. the World Wide Web vs. the Cloud 401





IP Address 401





Network Address Translation 402





MAC Address 402





HTML 402





HTTP and HTTPS 402





GET/POST 403





DHCP 403





DNS 403





Clients and Servers 403





Your Wi-Fi-Enabled Arduino 404





Controlling Your Arduino from the Web 404





Setting Up the I/O Control Hardware 404





Preparing the Arduino IDE for Use with the Feather Board.406





Ensuring the Wi-Fi Library is Matched to the Wi-Fi Module's Firmware 407





Checking the WINC1500's Firmware Version 408





Updating the WINC1500's Firmware 408





Writing an Arduino Server Sketch 408





Connecting to the Network and Retrieving an IP Address via DHCP 409





Writing the Code for a Bare-Minimum Web Server 412





Controlling Your Arduino from Inside and Outside Your Local Network 423





Controlling Your Arduino over the Local Network 423





Using Port Forwarding to Control Your Arduino from Anywhere 425





Interfacing with Web APIs 427





Using a Weather API428





Creating an Account with the API Service Provider 429





Understanding How APIs are Structured 430





JSON-Formatted Data and Your Arduino 430





Fetching and Parsing Weather Data 431





Getting the Local Temperature from the Web on Your Arduino 433





Completing the Live Temperature Display 440





Wiring up the LED Readout Display 440





Driving the Display with Temperature Data 443





Summary 449





Appendix A: Deciphering Datasheets and Schematics 451





Index 461

Polecamy również książki

Strony www Białystok Warszawa
801 777 223