1 Bits and pieces of executing a project Progress of your Final year project – You have a title ?...
21
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?
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
1 Bits and pieces of executing a project Progress of your Final
year project You have a title ? You have a list of objectives?
Whats next? Is it a hardware project? Is it a software project? Is
it a combination of hardware and software with a
microcontroller?
Slide 2
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?
Slide 3
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!
Slide 4
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! Dont forget the OOP nature
of C++ as most third- party algorithms are available in
classes
Slide 5
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
Slide 6
6 MatLab MatLab can also develop into a GUI
http://blinkdagger.com/matlab/matlab-gui-
graphical-user-interface-tutorial-for- beginners/
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
Slide 7
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
Slide 8
Slide 9
9 LabView
Slide 10
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?
Slide 11
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
Slide 12
Where to buy your hardware In Hong Kong, Welfare (Sham Shui Po)
IC master (San Po Kong) RS
http://hongkong01.rs-online.com/web/http://hongkong01.rs-online.com/web/
Farnell DigiKey In http://www.hqew.com/ http://www.hqew.com/ In
taobao 12
Slide 13
Motors There are different kinds of motors DC motor (current)
Servo motor (pulse width) Stepper motor (digital) Linear motor
Slide 14
Power DC power Battery? Current Weight Size
Slide 15
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
Slide 16
Microprocessor Arduino is getting very common in FYP
http://arduino.cc/en/Main/Hardware
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
http://www.youtube.com/watch?v=fCxzA9_kg6s 16
Slide 17
C for microprocessor In assembly programming you do Mov P0,
#0FF Djnz R0, abc In C you do P0 = #0FF If (i>10) {} else
{}
Slide 18
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
http://s8.taobao.com/search?q=arduino&com mend=all&ssid=s5-
e&pid=mm_14507416_2297358_8935934 18
Slide 19
Other processors ADuC832 also available
http://www.futurlec.com/ADuC842_Controller.sht ml
http://www.futurlec.com/ADuC842_Controller.sht ml Basic Stamp used
to be popular with FYP Also comes with many supporting components
but rather expensive Available from
www.parallax.comwww.parallax.com Very good software support 19
Slide 20
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
Slide 21
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