UID:
almahu_9949386970702882
Umfang:
1 online resource
ISBN:
9781000329490
,
1000329496
,
9781003120018
,
1003120016
,
9781000329599
,
1000329593
,
9781000329544
,
1000329542
Inhalt:
NB-IoT is the Internet of Things (IoT) technology used for cellular communication. NB-IoT devices deliver much better capability and performance, such as: increased area coverage of up to one kilometer; a massive number of devices--up to 200,000--per a single base-station area; longer battery lifetime of ten years; and better indoor and outdoor coverage for areas with weak signal, such as underground garages. The cellular NB-IoT technology is a challenging technology to use and understand. With more than 30 projects presented in this book, covering many use cases and scenarios, this book provides hands-on and practical experience of how to use the cellular NB-IoT for smart applications using Arduino, Amazon Cloud, Google Maps, and charts. The book starts by explaining AT commands used to configure the NB-IoT modem; data serialization and deserialization; how to set up the cloud for connecting NB-IoT devices; setting up rules, policy, security certificates, and a NoSQL database on the cloud; how to store and read data in the cloud; how to use Google Maps to visualize NB-IoT device geo-location; and how to use charts to visualize sensor datasets. Projects for Arduino are presented in four parts. The first part explains how to connect the device to the mobile operator and cellular network; perform communication using different network protocols, such as TCP, HTTP, SSL, or MQTT; how to use GPS for geo-location applications; and how to upgrade NB-IoT modem firmware over the air. The second part explains the microcontroller unit and how to build and run projects, such as a 7-segment display or a real-time clock. The third part explains how NB-IoT can be used with sensor devices, such as ultrasonic and environmental sensors. Finally, the fourth part explains how NB-IoT can be used to control actuators, such as stepper motors and relays. This book is a unique resource for understanding practical uses of the NB-IoT technology and serves as a handbook for technical and non-technical readers who are looking for practicing and exercising the cellular NB-IoT technology. The book can be used by engineers, students, researchers, system integrators, mobile operators' technical staff, and electronics enthusiasts. To download the software which can be used with the book, go to: https://github.com/5ghub/NB-IoT About the Author: Hossam Fattah is a technology expert in 4G/5G wireless systems and networking. He received his Ph.D. in Electrical and Computer Engineering from University of British Columbia, Vancouver, Canada in 2003. He received his Master of Applied Science in Electrical and Computer Engineering from University of Victoria, Victoria, Canada in 2000. He completed his B.Sc. degree in Computers and Systems Engineering from Al-Azhar University, Cairo, Egypt in 1995. Between 2003 and 2011, he was in academia and industry, including Texas A&M University. Between 2011 and 2013, he was with Spirent Communications, NJ, USA. Since 2013, he has been with Microsoft, USA. He is also an affiliate associate professor at University of Washington, Tacoma, WA, USA, teaching graduate courses on IoT and distributed systems and collaborating on 5G research and innovations. He has had many patents and technical publications in conferences and journals. He is a registered professional Engineer with the Association of Professional Engineers, British Columbia, Canada. He is the author of the recent book 5G LTE Narrowband Internet of Things (NB-IoT). His research interest is in wireless communications and radio networks and protocols, cellular quality of service, radio resource management, traffic and packet scheduling, network analytics, and mobility.
Anmerkung:
Cover -- Half Title -- Title Page -- Copyright Page -- Preface -- Acknowledgements -- Contents -- List of Listings -- 1. About This Book -- 1.1. Organization of the Book -- 1.1.1. How to Read This Book -- 1.1.2. Software and Hardware Tools Used in This Book -- 1.1.3. Conventions Used in the Book -- 1.1.4. Security Keys and Certificates -- 1.1.5. Hardware Parts -- 1.1.6. Feedback of the Book -- 2. LTE Cellular Narrowband Internet of Things (NB-IoT) -- 2.1. 4G and 5G System -- 2.2. LTE Cellular Narrowband Internet of Things (NB-IoT) -- 2.3. NB-IoT Applications and Scenarios -- 2.3.1. NB-IoT Sensors -- 2.3.2. NB-IoT Actuators -- 2.4. NB-IoT Core Network -- 2.5. Message Queue Telemetry Transport (MQTT) -- 2.5.1. Publish/Subscribe Model -- 2.5.2. Topic and Subscription -- 2.5.3. Retained Messages -- 2.5.4. Will -- 2.5.5. Quality of Service Levels -- 2.6. 5G New Radio (NR) -- 2.7. Case Study for Smart City: City of Coral Gables, Florida -- 2.7.1. IoT Use Cases in the Smart City Hub -- 2.7.2. Smart City Hub IoT Dashboard -- 2.8. Commercial NB-IoT Modems -- 3. Installing and Setting up Hardware and Software -- 3.1. NB-IoT Hardware Board and Software -- 3.2. Installing Arduino IDE and NB-IoT Hardware Board Package -- 3.3. Installing Library -- 3.4. Setting up the NB-IoT Hardware Board -- 3.5. Arduino Serial Monitor -- 4. Microcontroller and NB-IoT Modem Units -- 4.1. Microcontroller Unit (MCU) -- 4.2. Quectel BG96 LTE Cellular NB-IoT Modem -- 4.3. Key Features of the NB-IoT Hardware Board for Arduino -- 4.4. Inside NB-IoT Hardware Board for Arduino -- 4.5. Connecting the NB-IoT Hardware Board to the Computer -- 5. AT Commands -- 5.1. AT Command Syntax -- 5.2. General Commands -- 5.3. Status Control Commands -- 5.4. Network Commands -- 5.5. Packet Domain Commands -- 5.6. TCP/IP Commands -- 5.7. SSL Commands -- 5.8. MQTT Commands -- 5.9. HTTP Commands.
,
5.10. File Commands -- 5.11. GNSS Commands -- 5.12. Firmware Update Commands -- 5.13. Mobile Operator Configuration -- 5.14. Arduino Sketch -- 6. Data Serialization and Deserialization -- 6.1. JavaScript Object Notation (JSON) Format -- 6.2. JSON Serialization -- 6.3. JSON Library for Arduino -- 6.4. Arduino Sketch with JSON -- 6.5. Concise Binary Object Representation (CBOR) Format -- 6.6. Data Item in CBOR -- 6.7. Major Type 0 (Unsigned Integer) -- 6.8. Major Type 1 (Signed Integer) -- 6.9. Major Type 2 (Byte Strings) -- 6.10. Major Type 3 (Text Strings) -- 6.11. Major Type 4 (Arrays) -- 6.12. Major Type 5 (Maps) -- 6.13. Major Type 7 (Floating-Point Number) -- 6.14. CBOR Compact Data Size -- 6.15. Arduino Sketch with CBOR -- 6.16. JSON versus CBOR -- 7. AmazonWeb Services for IoT Devices (AWS IoT) -- 7.1. AWS IoT Device Management and Configuration -- 7.2. Registering the Thing -- 7.3. Creating Security Certificates -- 7.4. Creating Policy -- 7.5. Creating Rule -- 7.6. Creating DynamoDB -- 7.7. Arduino Client Sketch with AWS IoT -- 7.8. AWS IoT Device Communication and Testing -- 8. Data Visualization -- 8.1. Accessing AWS DynamoDB Data -- 8.2. Setting AWS Credentials and Region -- 8.3. Using Node.js and JavaScript APIs for AWS SDK -- 8.4. Read Single Records in DynamoDB -- 8.5. JavaScript for Reading the DynamoDB -- 8.6. Read All Records in DynamoDB -- 8.7. Visualizing GPS Geo-Location Using Google Maps -- 8.7.1. Get the Google Maps API -- 8.7.2. Initializing Google Maps Using JavaScript API -- 8.7.3. Retrieving the GPS location from the DynamoDB -- 8.7.4. Displaying the GPS Geo-Location in a Web Browser -- 8.8. Data Visualization Using Charts -- 8.8.1. Installing Chart.js Library -- 8.8.2. Prepare an Area in Web Page to Render Chart -- 8.8.3. Reading and Preparing the Data from DynamoDB -- 8.8.4. Draw the Bar Chart.
,
8.8.5. Create Complete Web Page -- 8.8.6. Rendering the Chart -- I. Networking -- 9. Turning on the Modem -- 9.1. Hardware and Software Component Required -- 9.2. Setup Steps and Diagram -- 9.3. Arduino Sketch -- 10. Transmission Control Protocol (TCP) -- 10.1. Hardware Setup, Steps, and Diagram -- 10.2. Arduino Sketch -- 11. Secure Socket Layer (SSL) Connection -- 11.1. Hardware Setup, Steps, and Diagram -- 11.2. Arduino Sketch -- 12. Message Queue Telemetry Transport (MQTT) -- 12.1. Hardware Setup, Steps, and Diagram -- 12.2. Arduino Sketch -- 13. Location and GPS Tracking -- 13.1. Hardware Setup, Steps, and Diagram -- 13.2. Arduino Sketch -- 13.3. Arduino Sketch -- 13.4. Interface with the Cloud -- 14. Hypertext Transfer Protocol (HTTP) -- 14.1. Hardware Setup, Steps, and Diagram -- 14.2. Arduino Sketch -- 15. NB-IoT Modem Firmware Update -- 15.1. Hardware Setup, Steps, and Diagram -- 15.2. Arduino Sketch -- II. Microcontroller -- 16. RGB LED -- 16.1. Hardware Component Required -- 16.2. Circuit Operation -- 16.3. Schematic Diagram -- 16.4. Breadboard Diagram -- 16.5. Arduino Sketch -- 17. Making Sound Using Active Buzzer -- 17.1. Hardware Component Required -- 17.2. Circuit Operation -- 17.3. Schematic Diagram -- 17.4. Breadboard Diagram -- 17.5. Arduino Sketch -- 18. Making Sound Using Passive Buzzer -- 18.1. Hardware Component Required -- 18.2. Circuit Operation -- 18.3. Schematic Diagram -- 18.4. Breadboard Diagram -- 18.5. Arduino Sketch -- 19. Keypad Switch -- 19.1. Hardware Component Required -- 19.2. Circuit Operation -- 19.3. Schematic Diagram -- 19.4. Breadboard Diagram -- 19.5. Arduino Sketch -- 20. Push Button -- 20.1. Hardware Component Required -- 20.2. Circuit Operation -- 20.3. Schematic Diagram -- 20.4. Breadboard Diagram -- 20.5. Arduino Sketch -- 21. Analog Joystick -- 21.1. Hardware Component Required -- 21.2. Circuit Operation.
,
21.3. Schematic Diagram -- 21.4. Breadboard Diagram -- 21.5. Arduino Sketch -- 22. Infra-Red (IR) Receiver -- 22.1. Hardware Component Required -- 22.2. Circuit Operation -- 22.3. Schematic Diagram -- 22.4. Breadboard Diagram -- 22.5. Arduino Sketch -- 23. Radio Frequency Identification -- 23.1. Hardware Component Required -- 23.2. Circuit Operation -- 23.3. Schematic Diagram -- 23.4. Breadboard Diagram -- 23.5. Arduino Sketch -- 24. Eight LED and Shift Register -- 24.1. Hardware Component Required -- 24.2. Circuit Operation -- 24.3. Schematic Diagram -- 24.4. Breadboard Diagram -- 24.5. Arduino Sketch -- 24.6. Arduino Sketch Using the Serial Monitor -- 25. Seven-Segment Display -- 25.1. Hardware Component Required -- 25.2. Circuit Operation -- 25.3. Schematic Diagram -- 25.4. Breadboard Diagram -- 25.5. Arduino Sketch -- 26. Real-Time Clock -- 26.1. Hardware Component Required -- 26.2. Circuit Operation -- 26.3. Schematic Diagram -- 26.4. Breadboard Diagram -- 26.5. Arduino Sketch -- III. Sensors -- 27. Tilt Sensor Switch -- 27.1. Hardware Component Required -- 27.2. Circuit Operation -- 27.3. Schematic Diagram -- 27.4. Breadboard Diagram -- 27.5. Arduino Sketch -- 27.6. Interface with the Cloud -- 28. Photocell -- 28.1. Hardware Component Required -- 28.2. Circuit Operation -- 28.3. Schematic Diagram -- 28.4. Breadboard Diagram -- 28.5. Arduino Sketch -- 28.6. Interface with the cloud -- 29. Ultrasonic Sensor -- 29.1. Hardware Component Required -- 29.2. Circuit Operation -- 29.3. Schematic Diagram -- 29.4. Breadboard Diagram -- 29.5. Arduino Sketch -- 29.6. Interface with the Cloud -- 30. Temperature and Humidity Sensor -- 30.1. Hardware Component Required -- 30.2. Circuit Operation -- 30.3. Schematic Diagram -- 30.4. Breadboard Diagram -- 30.5. Arduino Sketch -- 30.6. Interface with the Cloud -- 31. Water Level Detection Sensor.
,
31.1. Hardware Component Required -- 31.2. Circuit Operation -- 31.3. Schematic Diagram -- 31.4. Breadboard Diagram -- 31.5. Arduino Sketch -- 31.6. Interface with the Cloud -- 32. Microphone Sound Sensor -- 32.1. Hardware Component Required -- 32.2. Circuit Operation -- 32.3. Schematic Diagram -- 32.4. Breadboard Diagram -- 32.5. Arduino Sketch -- 32.6. Interface with the Cloud -- 33. Thermometer -- 33.1. Hardware Component Required -- 33.2. Circuit Operation -- 33.3. Schematic Diagram -- 33.4. Breadboard Diagram -- 33.5. Arduino Sketch -- 33.6. Interface with the Cloud -- 34. Gyroscope Sensor -- 34.1. Hardware Component Required -- 34.2. Circuit Operation -- 34.3. Schematic Diagram -- 34.4. Breadboard Diagram -- 34.5. Arduino Sketch -- 34.6. Interface with the Cloud -- IV. Actuators -- 35. Servo Motor -- 35.1. Hardware Component Required -- 35.2. Schematic Diagram -- 35.3. Breadboard Diagram -- 35.4. Arduino Sketch -- 35.5. Interface with the Cloud -- 36. Stepper Motor -- 36.1. Hardware Component Required -- 36.2. Circuit Operation -- 36.3. Schematic Diagram -- 36.4. Breadboard Diagram -- 36.5. Arduino Sketch -- 36.6. Interface with the Cloud -- 36.7. Controlling Stepper Motor with Remote -- 36.8. Schematic Diagram -- 36.9. Breadboard Diagram -- 36.10. Arduino Sketch -- 37. Relay -- 37.1. Hardware Component Required -- 37.2. Circuit Operation -- 37.3. Schematic Diagram -- 37.4. Breadboard Diagram -- 37.5. Arduino Sketch -- 37.6. Interface with the Cloud -- 38. Hardware Parts -- References -- Index.
Weitere Ausg.:
Print version: ISBN 9781000329599
Weitere Ausg.:
Print version: ISBN 0367636298
Weitere Ausg.:
ISBN 9780367636296
Sprache:
Englisch
Schlagwort(e):
Electronic books.
DOI:
10.1201/9781003120018
URL:
https://www.taylorfrancis.com/books/9781003120018
Bookmarklink