Bits and pieces of executing a project

molassesitalianΤεχνίτη Νοημοσύνη και Ρομποτική

6 Νοε 2013 (πριν από 3 χρόνια και 10 μήνες)

49 εμφανίσεις

1

Bits and pieces of executing a project


Progress of your Final year project


You have a title ?


You have a list of objectives?


What’s next?


Is it a hardware project?


Is it a software project?


Is it a combination of hardware and software with
a microcontroller?

2

Software project


What kind of software?


Derive a new algorithm to solve a problem in
power system?


Develop a software package?


Do you need GUI?


What programming language should you use?


C++, Java, C#, MatLab, LabView?


3

What programming language to use?


Defined by the project?


There is an existing program developed from
other students and you job is to further develop
or enhance


Defined by the supervisor


Your supervisor knows Fortran so you must write
the program in Fortran!


Anything as long as it can get the job done!

4

Which programming language


C++ is an obvious choice as you know it well!!!!


C++ can solve most of the engineering problems as
well as developing basic GUI


There are many existing third
-
party library functions
available in the Web!


Don’t forget the OOP nature of C++ as most third
-
party algorithms are available in “classes”


5

Which programming language


MatLab?


Good for solving engineering problems


With many tool boxes for different algorithms


Image processing tool box


Fuzzy logic,


Simulink for control


MatLab can also work with external function
written in C

6

MatLab


MatLab

can also develop into a GUI


http://blinkdagger.com/matlab/matlab
-
gui
-
graphical
-
user
-
interface
-
tutorial
-
for
-
beginners/



Similar to C++, there are also many third
-
party
MatLab

program (.m file) available on the Web


MatLab

program can also convert into a C/C++
program

7

LabView


Do you know what is
LabView
?


LabView

is a graphical programming environment
developed by NI (National Instruments)


LabView

can be used as a stand alone programming
tool


Example


Investigation of repeatable signal signature in rail
condition monitoring with FBG sensors


Vehicle Number Plate Recognition by Image Processing
Techniques

9

LabView

10

Hardware


Hardware relatively is difficult to generalize


Certainly design buck
-
boost converter is very
different from designing a Axial
-
flux
-
modulated
motor


Requirements are so different!


What should you build or what should you buy
?


Hardware


There are so many off
-
the
-
shelf components available so is it
necessary to re
-
invent the wheel?


For example, if you need a buck
-
boost converter then there
are many IC available for the job; same for motor drivers


Talk to your supervisor before building or buying any
expensive components


Make sure that you understand the key objectives of your
project

11

Where to buy your hardware


In Hong Kong,


W
elfare

(Sham
Shui

Po)


IC master (San Po Kong)


RS
http://hongkong01.rs
-
online.com/web/


Farnell


DigiKey


In

http://www.hqew.com/


In
taobao

12

Motors


There are different kinds of motors


DC motor (current)


Servo motor (pulse width)


Stepper motor (digital)


Linear motor

Power


DC power


Battery?


Current


Weight


Size

Hardware + software

Microprocessor related


Which processor?


There are so many processors available with
many features such as


PWM


for controlling a motor


ADC, DAC (for getting input from sensor)


I2C (for communicating with other devices)

15

Microprocessor


Arduino

is getting very common in FYP


http://arduino.cc/en/Main/Hardware



Come with a IDE for software development


You can program using C (most
microcontroller can be programmed using C
language!!)


Tutorial in
Youtube


http://www.youtube.com/watch?v=fCxzA9_kg6s

16

C for microprocessor



In assembly programming you do


Mov P0, #0FF


Djnz R0, abc


In C you do


P0 = #0FF


If (i>10) {} else {}


Arduino


It is cheap (
below
$150) and comes with many
support modules including


IR sensor


Motor driver


RF module


http://s8.taobao.com/search?q=arduino&com
mend=all&ssid=s5
-
e&pid=mm_14507416_2297358_8935934

18

Other processors


ADuC832 also available


http://www.futurlec.com/ADuC842_Controller.sht
ml



Basic Stamp


used to be popul
ar

with FYP


Also comes with many supporting components
but rather expensive


Available from
www.parallax.com


Very good software support

19

Keil

compiler


If you are developing your own
microprocessor system then how to
compile/assemble your program?


Keil

is a generic compiler that can support
many types of microprocessors


Programs can be written in C, assembly etc


http://www.keil.com/


20

Mechanical issues


Mechanical design is more difficult than
electrical for EE students


Industrial Centre (IC) can help


You can pay for services in IC


You can get some free components


You can get better support from IC if you can
highlight the significant of your project