Logic Analyzer ECE-4220 Real-Time Embedded Systems Final Project Dallas Fletchall.

Slides:



Advertisements
Similar presentations
Computer Architecture
Advertisements

System Integration and Performance
What is Arduino?  Arduino is a ATMEL 168 micro-controller kit designed specially for small projects  User friendly IDE(Integrated Development Environment)
Distributed System Structures Network Operating Systems –provide an environment where users can access remote resources through remote login or file transfer.
Data - Information - Knowledge
Network Management Overview IACT 918 July 2004 Gene Awyzio SITACS University of Wollongong.
Slide 1 Client / Server Paradigm. Slide 2 Outline: Client / Server Paradigm Client / Server Model of Interaction Server Design Issues C/ S Points of Interaction.
Real-Time Authentication Using Digital Signature Schema Marissa Hollingsworth BOISECRYPT ‘09.
Chapter 22 All About SCSI.
ECE 4220 Real Time Embedded Systems Final Project Presentation Spring 2014 University of Missouri Columbia By: Michael Brauch Temperature Data Logger.
Data Networking Fundamentals Unit 7 7/2/ Modified by: Brierley.
Cambodia-India Entrepreneurship Development Centre - : :.... :-:-
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Communicating over the Network Network Fundamentals – Chapter 2.
2. Methods for I/O Operations
Basic Concepts of Computer Networks
System Architecture & Hardware Configurations Dr. D. Bilal IS 592 Spring 2005.
NETWORK CENTRIC COMPUTING (With included EMBEDDED SYSTEMS)
 Part 1: The definitions of networking -Network -Standalone -LAN -WAN -Clients -Server -Clients/Server Networks -Peer to Peer Networks Part 1NetworkStandaloneLANWANClientsServerClients/Server.
Chapter 16 The World Wide Web Chapter Goals Compare and contrast the Internet and the World Wide Web Describe general Web processing Describe several.
Introduction To Computer System
Version 4.0. Objectives Describe how networks impact our daily lives. Describe the role of data networking in the human network. Identify the key components.
“ACT” Audio Conference over ATM Network with TRM Technion - Israel Institute of Technology Electrical Engineering Faculty Computer Networks Laboratory.
World Wide Web Hypertext model Use of hypertext in World Wide Web (WWW) WWW client-server model Use of TCP/IP protocols in WWW.
SEISLOG Linux presented at the WORKSHOP High Quality Seismic Stations and Networks for Small Budgets Volcan, Panama March, 2004 by Terje Utheim,
Grob Systems, Inc., the customer, requires an industrial computer system that will have a function of acquiring raw data, processing the data, presenting.
Power Control System for a Concrete Durability Test Cabinet – Phase 2 Jacob Jameson Madhav Kothapalli Thomas Persinger Andrew Versluys.
GBT Interface Card for a Linux Computer Carson Teale 1.
DEVICES AND COMMUNICATION BUSES FOR DEVICES NETWORK
Guide to Linux Installation and Administration, 2e1 Chapter 2 Planning Your System.
Other Chapters From the text by Valvano: Introduction to Embedded Systems: Interfacing to the Freescale 9S12.
WELCOME TO SEMINAR ON SCADA WELCOME TO SEMINAR ON SCADA Presented by: ANIL KUMAR RAUT Adm No:33IE/2k.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
© 2008 RoboRubik1 11 Technical Communication Skills Practicum Theory of Operation and Hardware Design Narrative.
© Paradigm Publishing Inc. 4-1 OPERATING SYSTEMS.
Data Networking Fundamentals Chapter 7. Objectives In this chapter, you will learn to: Discuss basic networking concepts, including the elements common.
By Tony Hoff ECE 4220 – Real Time Embedded Computing University of Missouri - Columbia Course Instructor: Dr. Guiherme DeSouza.
Stores the OS/data currently in use and software currently in use Memory Unit 21.
Network Operating Systems : Tasks and Examples Instructor: Dr. Najla Al-Nabhan
OLE Slide No. 1 Object Linking and Embedding H OLE H definition H add other information to documents H copy.
GLOBAL EDGE SOFTWERE LTD1 R EMOTE F ILE S HARING - Ardhanareesh Aradhyamath.
© Paradigm Publishing, Inc. 4-1 Chapter 4 System Software Chapter 4 System Software.
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
8 Chapter Eight Server-side Scripts. 8 Chapter Objectives Create dynamic Web pages that retrieve and display database data using Active Server Pages Process.
Communications & Networks National 4 & 5 Computing Science.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
Unit 1 Lecture 4.
ASP-2-1 SERVER AND CLIENT SIDE SCRITPING Colorado Technical University IT420 Tim Peterson.
Week1: Introduction to Computer Networks. Copyright © 2012 Cengage Learning. All rights reserved.2 Objectives 2 Describe basic computer components and.
Digital Literacy: Computer Basics
Systems and User Interface Software. Types of Operating System  Single User  Multi User  Multi-tasking  Batch Processing  Interactive  Real Time.
1 Information Retrieval and Use De-normalisation and Distributed database systems Geoff Leese September 2008, revised October 2009.
System Architecture & Hardware Configurations Dr. D. Bilal IS 582 Spring 2008.
Voice Controlled Home Automation System Group 13 Zhe Gong Hongchuan Li.
Network Operating Systems : Tasks and Examples Instructor: Dr. Najla Al-Nabhan
Electronic Craps Table. Objective Design a system to incorporate electronics into the game of craps to track bets and payouts while maintaining the interactive.
Distributed Computing & Embedded Systems Chapter 4: Remote Method Invocation Dr. Umair Ali Khan.
2.2 Interfacing Computers MR JOSEPH TAN CHOO KEE TUESDAY 1330 TO 1530
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
PART1 Data collection methodology and NM paradigms 1.
Peer 2 Peer & Client Server
System Architecture & Hardware Configurations
System Architecture & Hardware Configurations
CHAPTER 3 Architectures for Distributed Systems
Introduction to Local Area Networks
Tiers vs. Layers.
Information Technology Ms. Abeer Helwa
SDLC Phases Systems Design.
Embedded Sound Processing : Implementing the Echo Effect
Presentation transcript:

Logic Analyzer ECE-4220 Real-Time Embedded Systems Final Project Dallas Fletchall

Objectives Determine Logic Level of multiple signals Graphical Display of Results – Tabular formatted data is hard to quickly interpret – Signal labeling improves the ease in determining system performance Adjustable voltage levels – Allow for multiple systems with different thresholds to be analyzed

Implementation Client-Server Model Responsibilities 1.Client Requests data collection to begin Requests changes in voltage thresholds Display data graphically using GnuPlot Software Responsible for user interface 2.Server Respond to requests from Client Collect data on the GPIO pins and send across network Reformat voltage change requests for DACs 3.Signal Conditioning Provide high impedance while sampling input signals Provide variable voltages to comparator circuits

Implementation Signal Conditioning Provide high impedance to input signal – Reduces the loading effect from measuring the signal Limit the voltage output – Ensure voltage input to data collection server is within tolerance Allow for comparison for voltages outside tolerance of data collection Server

Implementation Server Hardware Raspberry Pi chosen as data collection server – Has 700Mhz processing core – Less than $40 cost – Available Linux Distributions to handle system calls, and decrease development time – Well documented on the web – 16 general purpose input/output (GPIO) pins Orsini, Lauren. The front of a Raspberry Pi Model B. [Photo]. Retrieved from :

Implementation Client Hardware Need display capabilities Network connection GnuPlot Software

Implementation Server Software Message Handling – Start sampling message – Configure DAC settings Data collection – Setup and read GPIO pins – Determine starting and stopping times – Send register value to Client for each sample – Send elapsed time to Client after sampling completion DAC Communication – Handle SPI communications

Implementation Client Software GnuPlot Display – Handle channel labeling – Update plot after recording – Set x & y axis labels User Input – Display options menu – Format user input Server expects messages in certain format Abstract how GnuPlot system works from user – Relay error messages

Results Sampling Rate – 333k samples/sec average DAC accuracy – mVdc Graphical Display of Collected Data Reliable Network Connection

Results

Experiments/Discussion Sample Rate Initial Implementation Server stored struct timeval and an int for each channel File was transmitted using system call, sendfile() Advantages Removed unnecessary implementation details from client application sendfile(), according to man pages is supposed to be the most efficient way to transfer files Disadvantages Storing to a file on rasperry pi is extremely slow. – Writing to the file without sending restricted sampling rate to approximately 200k samples/sec Each GPIO was masked and shifted individually

Experiments/Discussion Time Taken to Record 300k Samples to File on Server Time Taken to Send 300k Samples over Socket VS.

Experiments/Discussion WiringPi Open source library Easy access to GPIO pins and special functions Problems To support all versions of raspberry pi, conditional statements for board revision and pin numbering scheme are used GPIO read entails bit masking and shifting, returning a single pin value. 8 reads necessary to determine channel values compounded unnecessary instructions WiringPi renamed the GPIO pins to ease use, but consecutive pins were not necessarily consecutive in the GPIO level register

Experiments/Discussion WiringPi Pinout Scheme Henderson, Gordon. WiringPi pinout scheme. [Table]. Retrieved from :

Experiments/Discussion Sample Rate Improvement Remove calls to wiringPi API Read and store the entire GPIO level register Advantages Register could be read and stored, handling masking and shifting after sampling Removes all conditional statements Removes need to read register value, masking, and shifting for each pin individually Disadvantages Difficulty setting the pin function, such as input/output, special function selection, pull-up/pull-down resistor

Experiments/Discussion Implications of GPIO Selection Advantages Selecting 2 separate consecutive four pins allowed for less computation to mask and shift Required less pins without need for SPI connections Disadvantages Serial Peripheral Interface pins were unavailable for use – Software mimicked this interface to allow for communications with DAC

Experiments Sample Rate Experiments Transmit Package Size Create a buffer of multiple GPIO level register values and send buffer over the socket Advantage Maximum number of samples able to be recorded, approximately 400k samples/sec Disadvantage Increased samples were in bursts, with gaps in recorded data

Experiments Example of gaps in collection using multiple register readings sent over the network. The text above is the file being plotted.

Experiments Sample Rate Experiments Estimate Time of Sample Determine sample time by equally spacing samples across total time to record all samples Advantages Package size decreased Times can be calculated after sample collection Disadvantages Sample time accuracy not guaranteed

Conclusion Failures Sampling rate is too slow for use with serial data transfer Real-Time system would improve due to accurate spacing between recordings. Long interval sampling reduces accuracy Successes Data was able to be plotted graphically Correct collection and display of data Increased sampling rate can be achieved for small time intervals