Embedded System Project
#1

Embedded System Project
Abstract
The goal of this course is to help students understand the world of embedded computer
systems. Usually participants are information and electrical engineering students who
are specialized in software and system design. Most attention has been given to elementary
hardware design skills because these skills are the ones students often lack.
This course is structured as a guided walk through the hardware design process.
This document defines the project topic for spring 2003, gives general guidelines and
course procedures. Additionally major electronics components is proposed and practical
hints are given. The students are encouraged to give feedback for improving both
the course and its material.
The Embedded System Project is related to, but independent of Software Engineering
Project (Ohjelmistotekniikan työ, 521451S) that concentrates on software-hardware
interface.
1. Course objectives
The purpose of the Embedded System Project (Sulautettujen järjestelmien työt) course
is to provide you knowledge and hands-on experience in the embedded computer system
technology. The course is intended to students specializing in software and system
design, giving most attention to hardware design, as understanding in this area is vital
for most embedded software designers. In short, this course is a chance for the very
novices in electronics design to create a simple embedded computer based device and
to learn the maximum from the experience.
You will learn both about design and tools. You will learn to study the components to
fit the various pieces together into a complete system and you will understand the role
of a microcontroller, seeing it as basic building block. In particular, you will concentrate
on hardware-software interaction, although very little software will be written in
this project. You will learn to design the schematics and layout using Printed Circuit
Board (PCB) tools (e.g. OrCad), although their more advanced functions are not covered
in this course. In the end, you will learn to use an emulator and other microcontroller
development tools while testing the assembled circuit board you will make.
Admittedly, there is a lot to be learned.
The course is realized as a project-like assignment that requires approximately 120-
160 hours from a team of two students during a single term. There are several topics to
choose from. The topics are divided to three categories: basic topic, optional topics and
own topic. The basic topic is meant for people that are new to the embedded systems.
The basic topic contains only familiar technologies and the teachers are familiar with
the topic, enabling more efficient tutoring. Also some suitable components for the assignment
have been pre-examined, letting the students to avoid the full exposure to
“navigation” problems, such as selecting, finding, and ordering components. The specification
for this topic is already defined and the basic structure of the work is fixed,
but there are still some degrees of freedom in the design.
The optional topics are meant for students with some interest in embedded systems.
These topics use modern technology and the design is predefined only at high level.
The students create the actual specification by themselves. This specification is then
checked and approved by the teachers. For these topics there are only a few pre-examined
key component proposals, but the students will choose most of the components
themselves. These topics give the students a great freedom of creativity. The teachers
will help with adjusting the specification to be not too difficult but still challenging
enough. The teachers will also help with the component selections and with the design,
but the students have the main responsibility of the design. As some of the components
may be new, they may prove to be non-functional in some designs. This is not a catastrophy
and these possibilities are taken into account in grading. However, careful planning
and hard trying is still required. The students may also propose their own topic.
These proposals are handled similarly to the optional topic specifications.
We believe a reasonably painless completion of this course requires the following
course background: Digital Design I (Digitaalitekniikka I, 521413A), Computer Engineering
I (Tietokonetekniikka I, 521415A), and Computer Engineering II
5
(Tietokonetekniikka II 521419A). In addition, Software Engineering Project (Ohjelmistotekniikan
työ, 521451S) and Electronic Design course (Elektroniikkasuunnittelun
perusteet, 521431A) are useful.
We hope you will assist us in the development of this course by giving your criticism
and hints. The basic topic for spring 2003 is Robot Control Module. You may also
choose one of our optional topics or propose a topic of your own.
2 Topic descriptions
2.1 Basic topic: Robot Control Module (RCM)
Your task is to design a control module for a robot. The robot is a simple two wheel
robot that uses two stepper motors for driving. The robot can be programmed to drive
autonomously a certain path. A list of driving commands are first downloaded from a
PC to the robot, after which the robot will drive automatically through the program.
The mechanics of the robot are provided. They include the robot base with two stepper
motors for wheels, bumber switches and an LCD display. The motors, switches and
LCD-display have simple connectors for attaching them to the control module. Figure
of the base will appear to course web pages (http://ee.oulu.fi/~terva/
Embedded2003) when ready. The robot base has a space for a standard euro size PCB
(10 x 16 cm) and four holes for attaching the PCB to the base. Thus you need to implement
your control module to a 10 x 16 cm sized PCB and place the holes to correct
places. A footprint for the holes is provided, so you only need to add the footprint to
your PCB to get the holes to their right places.
The control module will be based on an Atmel ATmega series microcontroller. The
students can choose from three choices: Atmega 161, 163 and 323. The control module
is required to contain the following peripherals:
- some external memory for saving the driving commands
- RS232 serial connection for the PC
- some buttons and an LCD display for operating the robot
- driver or amplifier ICConfused for interfacing to the stepper motors
- programmer header or programming circuit for programming a real microcontroller
The main connections are presented in figure 1. The minimum requirements for the
RCM system to be built by each group are the following:
1) The driving commands can be uploaded from a PC to the RCM.
2) The robot can autonomously drive the programmed path.
3) The robot will stop when bumper hits an obstacle (optionally tries to avoid the obstacle).
4) The robot has a user interface, which is used with buttons and LCD-display. The UI
is used at least for starting the driving and downloading data from PC.
5) The robot is operable with both battery and external dc-power.
The robot control module must be able to understand at least commands for driving
forward and backwards a length specified in centimeters and turning an angle specified
in degrees. For example a command for driving could be FW25, which takes the robot
forward 25 cm or BW04, which takes it bacwards 4 cmConfused. Similarly turning could be
CW50, which turns the robot 50 degrees clockwise or CC24, which turns the robot 24
degrees counter-clockwise.
The command list, which will be uploaded from a PC, will consist of a series of these
commands. For example using commands from the previous example, the list could be:
FW10
CC90
FW50
7
CW90
BW10
CW90
FW50
The previous commands are just examples. The groups may use them or create their
own commands. We suggest you use ASCII commands in order to be able to test them
easily with normal terminal programs such as HyperTerminal. However, any commands
are allowed, as long as you are able too demonstrate it working.
The robot software will be developed mainly with an emulator environment and using
an external power source. When the software and hardware are about complete, the
emulator will be left out and a real microcontroller will taken into use. Similarly the
external power source will be replaced by a battery. In other words, the final tests and
the demonstration will be made with a real microcontroller and a battery.
The suggested emulator environment for developing the software and testing the implementations
is presented in Figure 2. It consists of a PC workstation and a Atmel
ICE50 In Circuit Emulator. The self-made Printed Circuit Board (PCB) is connected
to the pod of the ICE. This is about the only stage in which the ICE can be damaged.
LCD display
RS-232
PC
Robot Control Module
Memory
External
Stepper
Motor
Stepper
Motor
Buttons
Bumper
Switches
How to connect the emulator cable:
1. Before connecting your design, turn the power off from the Atmel ICE50. The
PC workstation does not need to be shut down or switched off.
2. Connect the pod into the microprocessor socket of the PCB to be tested very
gently - it is extremely easy to bend the pins of the pod. Always use an extra
socket connected to the pod to avoid damaging it. This way the pod itself stays
in tact even if the pins are bend - only the extra socket has to be replaced.
3. When the ICE50 is properly connected to the target and the host PC, the power
can be turned on. The following procedure is recommended to ensure proper
communication between the ICE50 and AVR Studio.
• Power up ICE50
² Power up target board (PCB)
² Start AVR Studio
Note: The equipment will not be harmed in any way if a different power up sequence
is used, but since AVR Studio tries to detect peripherals when started, the
ICE50 will not be detected if not powered.
Be sure to switch off all powers before disassembling the system!
If these instructions are followed carefully every time the environment is used, costly
(and time consuming) repairs can be avoided.
If you are unsure about how to use the system, please read the instructions once more,
familiarize yourself with the manuals, and consult the supervisor of your team before
doing something questionable. After you have learned the basic routines, the use of the
system is quite straightforward and easy. However, please remember that everyone has
to start from the beginning sometime.
As the robot is a moving object, the final tests and the demonstration cannot be made
with the emulator, but with a real microcontroller. This requires that the students will
include either a programming header or the circuit to their PCBConfused. Tools for uploading
the software to the controller are provided in the laboratory. The flashing software is
PonyProg2000. More information about the programming is found at http://
ee.oulu.fi/~terva/Embedded2003/flashing.php.
Your own
Atmel
ICE50
Emulator
Connector pod Emulator cable
PC
PCB
9
The teams are free to create additional features to their system if they will. These additional
features affect positively (to a certain extend) to the grading of the team, provided
that the features are useful and working. All the basic features have to be met to
pass the course.
The teams are free to choose any microcontroller environment for their RCM system,
but they are strongly encouraged to use the Atmel ATmega161 microcontroller and the
ICE found from the student laboratory TS139. Before some other architecture is chosen
the teams shall consult with the supervisor of their team.
2.2 Optional topics and own topic
The optional topics are available at http://ee.oulu.fi/~terva/Embedded2003/topics.
php. For these topics the students are recommended to choose their microcontroller
from the ones listed at page http://ee.oulu.fi/~terva/Embedded2003/mcus.php.
Some components that may be suitable for different topics can be found at http://
ee.oulu.fi/~terva/Embedded2003/components.php.
Reply

Important Note..!

If you are not satisfied with above reply ,..Please

ASK HERE

So that we will collect data for you and will made reply to the request....OR try below "QUICK REPLY" box to add a reply to this page
Popular Searches: atmel, adblue emulator schematiic, emulator hider, embedded system projeting system project, emulator hq, atmel at895s2, emulator,

[-]
Quick Reply
Message
Type your reply to this message here.

Image Verification
Please enter the text contained within the image into the text box below it. This process is used to prevent automated spam bots.
Image Verification
(case insensitive)

Possibly Related Threads...
Thread Author Replies Views Last Post
  Embedded Software Testing seminar addict 1 2,775 30-01-2013, 12:22 PM
Last Post: seminar details
  Power Optimization and Management in Embedded Systems1 seminar paper 1 1,368 10-11-2012, 11:53 AM
Last Post: seminar details
  EMBEDDED DESIGN FOR POWER SAVING SYSTEM FOR POWER OPTIMIZATION project uploader 4 2,695 10-11-2012, 11:53 AM
Last Post: seminar details
  CONVEYOR AUTOMATION USING EMBEDDED SYSTEM seminar paper 1 1,487 27-10-2012, 03:52 PM
Last Post: seminar details
  Automation of car using embedded system seminar addict 1 1,382 27-10-2012, 03:52 PM
Last Post: seminar details
  Embedded C full report seminar details 0 790 06-06-2012, 01:39 PM
Last Post: seminar details
  Embedded DBMS seminar paper 0 708 14-03-2012, 04:11 PM
Last Post: seminar paper
  AN INTERNET BASED INTERACTIVE EMBEDDED DATA ACQUISATION seminar paper 0 845 13-03-2012, 04:55 PM
Last Post: seminar paper
  EMBEDDED BASED INDUSTRIAL AUTOMATION seminar paper 0 804 10-03-2012, 04:35 PM
Last Post: seminar paper
  Embedded based water purification system seminar paper 0 798 10-03-2012, 04:28 PM
Last Post: seminar paper

Forum Jump: