Need help choosing a project / making a prototype

Thread Starter

jonaas18

Joined Apr 4, 2019
67
Hello everyone.

I am currently in my last college year and one of my tasks is to design a prototype of something. Our teacher offered many project examples like: Creating an autonomous robot car, creating a pill dispensor, creating a computer game, etc.

The main thing in this project is the fact that I must use a microcontroller (preferably ATMega---) in order to control my prototype. For example, in the car project, I need to code my micro in order for him to accelerate or desaccelerate if, for example, the car encounters an object (with the help of proximity sensors). In the game project, for example, I need to code my micro with the game code itself and then display it on a monitor or osciloscope while controlling the main character with the micro (games like space invaders, Ping Pong, snake, etc....).

I am having lots of trouble choosing which project theme to follow since everything seems very hard. I have no idea how to code a car to drive and even less how to build a prototype of one.

Same with the game. If it was something like creating and executable file in Windows and run it, ok. Coding a micro and playing on it? No idea.

Any insights or help on this topic?
 

Thread Starter

jonaas18

Joined Apr 4, 2019
67
Last college year and no idea about simple embedded programming? What did you actually study?

Games can be a good way to learn.
Start simple and add complexity.

For example: One button, a buzzer and flashing lights is all you need to get started.
https://forum.allaboutcircuits.com/threads/engineering-display-for-a-family-day.162386/
As you may or may not know, subjects keep getting harder as you progress through college. I never studied nor used PCB's, aswell as programming a massive object to drive / walk / open / close / etc.

I know how to program micros (both in Assembly and in C) but I only studied the basics (like you would expect to in only 5 months of classes). I know simple things like how to turn on / off leds, how to display numbers on a 7 digit display, etc. Making a game with an interactive interface via a microcontroller or controlling a car through a micro is something I never studied.

Also, I'm not a bad student or dumb. However, I'm not a brilliant mind and most of the times I take time to learn things that could be rather simple.
 

narkeleptk

Joined Mar 11, 2019
558
I never studied nor used PCB's, aswell as programming a massive object to drive / walk / open / close / etc.
Bit surprised honestly, I imagined with the money you guys pay (or claim will pay) you would have better instructions and experiences by the end of your years to easily get projects like this done. No offense, but what are they teaching you? Do they just expect you to learn how to do these things on your own or where you not retaining the lessons after you passed the earlier courses ?
 

nsaspook

Joined Aug 27, 2009
13,079
As you may or may not know, subjects keep getting harder as you progress through college. I never studied nor used PCB's, aswell as programming a massive object to drive / walk / open / close / etc.

I know how to program micros (both in Assembly and in C) but I only studied the basics (like you would expect to in only 5 months of classes). I know simple things like how to turn on / off leds, how to display numbers on a 7 digit display, etc. Making a game with an interactive interface via a microcontroller or controlling a car through a micro is something I never studied.

Also, I'm not a bad student or dumb. However, I'm not a brilliant mind and most of the times I take time to learn things that could be rather simple.
I'm sure you understand a lot more than you realize but you need to be realistic on projects.

If you can turn off/on outputs and read inputs on micros then you have the basics need to create simple projects and to expand them as you learn

Time to get cracking then ...
 

Thread Starter

jonaas18

Joined Apr 4, 2019
67
Bit surprised honestly, I imagined with the money you guys pay (or claim will pay) you would have better instructions and experiences by the end of your years to easily get projects like this done. No offense, but what are they teaching you? Do they just expect you to learn how to do these things on your own or where you not retaining the lessons after you passed the earlier courses ?
We usually have both practical and theorical classes. We learn the theory and then we make the project. I had projects like making a "double dice roll simulator" on micros, i.e. I also made a thermometer simulator last year with the help of an arduino and a thermistor (it involved more than just this as I had to reach certain objectives my teacher asked me - mainly reducing signal's noise).

However, like I said, I haven't done anything related to creating a working prototype of something. The game attracted me a lot as I love arcade games. I get the idea of programming the game itself (there's even LOTS and LOTS of articles online about how to create these types of games) but I don't get the idea of how to program it on a micro and how it even runs there. Besides that, I also have no idea (didn't learnt anything about this either) on how to connect a micro to a display (a monitor for example) in order to see the game running.

The car project is also something I really like a lot. It seems interesting and damn I would be so happy if I could control the car by the end of the project. My issue is: I get that I'll have to control it via PWM on the atmega. I get that changing the PWM will change the motor speed (I suppose that, in the real world, changing PWM will change voltages / currents that will force the actual car motor to slow down or speed up). However, i have no idea how to build the hardware itself (my teacher called so many components' names that I've never heard of like PCB's, connectors, programmers, etc. etc.).

It's not like I won't have help from my teacher. The thing is, I have 4hr per week of this subject (in a lab) while only having 1hr of actual theory. As you can imagine, if I make a car and another guy makes something related to a pill dispensor, there's little to none things similiar. With this, it's obvious that the themes aborded in my theorical class will be general themes and things and not specific ones that I'll require to know to my car.
 
Last edited:

Thread Starter

jonaas18

Joined Apr 4, 2019
67
I'm sure you understand a lot more than you realize but you need to be realistic on projects.

If you can turn off/on outputs and read inputs on micros then you have the basics need to create simple projects and to expand them as you learn

Time to get cracking then ...
Well.. yeah. My issue is, where do I start? Reading inputs and outputs of what. If, for example, I choose to go with the game project. How do I start? There's so many things to do. Interface, the game itself (coding wise). Running it on a micro. Controlling the game via the micro. Displaying the game in a monitor. I've never done anything like this.
 

nsaspook

Joined Aug 27, 2009
13,079
Well.. yeah. My issue is, where do I start? Reading inputs and outputs of what. If, for example, I choose to go with the game project. How do I start? There's so many things to do. Interface, the game itself (coding wise). Running it on a micro. Controlling the game via the micro. Displaying the game in a monitor. I've never done anything like this.
You don't need monitors or fancy displays at first.
Press a push-button switch connected to a controller input for a logic true/false for the code, use the code to set an output on/off to light a LED. Game one compete.
 
Last edited:

narkeleptk

Joined Mar 11, 2019
558
Since you do not know anything about displays, avoid using one. Spooks given you great advice for something basic. Think doing a game similar to Simon says.
 

Thread Starter

jonaas18

Joined Apr 4, 2019
67
You don't need monitors or fancy displays at first.
Press a push-button switch connected to a controller input for a logic true/false for the code, used the code to set an output on/off to light a LED. Game one compete.
Will make the code and update it later on so. Thanks!
 

KMoffett

Joined Dec 19, 2007
2,918
Google: final year projects
Use these as examples. Don't go beyond the titles. Find something that sounds interesting to you.
Add a word like "electronics or microcomputers or electromechanical after "final year projects" to narrow your search to your areas of interest.

Ken
 

BobTPH

Joined Jun 5, 2013
8,807
Are you familiar with the game “Simon”. It use 5 lights each of which is a switch that can be pressed. It gives you a sequence of flashes, then you have to duplicate it by pressing the switches. Then it keeps adding one to the sequence until you fail.

Simple to do on a micro, and actually quite addictive!

You could start with that and add enhancements if you have extra time, like a readout for your score and the top score, or a two player game, etc.


Bob
 

Thread Starter

jonaas18

Joined Apr 4, 2019
67
Are you familiar with the game “Simon”. It use 5 lights each of which is a switch that can be pressed. It gives you a sequence of flashes, then you have to duplicate it by pressing the switches. Then it keeps adding one to the sequence until you fail.

Simple to do on a micro, and actually quite addictive!

You could start with that and add enhancements if you have extra time, like a readout for your score and the top score, or a two player game, etc.

Ahhhh, when Narkeleptk said "Simon says" I thought the other guy's name was Simon. Yes I know that game since I can remember, didn't know the name tho! That seems pretty simple. One question though:

When I programmed micros, I always had my micro (ATMEGA128) in a board (not the single component only). Besides that, I had a green board in which I had my leds, switches, mini fan (to work with PWM), etc. Do I need to buy that board in order to make this simpler or can I do that only with my atmega (probably the 328 version). If not, what's the name of that board or a similiar one?
Bob
 

ci139

Joined Jul 11, 2016
1,898
start from looking the ATmega programming manual and code libraries at the manufactures web site or related communities in www
list up what you already know
list up what's avail for download
  • put together minimal project data for each of your possible choices -- as in project steps::
  1. devices list
  2. code/functions to control/interface/etc. (voluntary subMakesThis&That() names)
  3. draw out block diagram for the program by functionality and tasks and servises/subroutines
  4. estimate the time spent to complete each task
  5. estimate your ability to complete each task including potential/time to learn new ones
  6. pick the project you most likely complete -- consult your estimates with your teacher / prj. manager
 

narkeleptk

Joined Mar 11, 2019
558
Ahhhh, when Narkeleptk said "Simon says" I thought the other guy's name was Simon. Yes I know that game since I can remember, didn't know the name tho! That seems pretty simple.
Hah, sorry about that. I forget how old I'm getting sometimes. I should have explained it or gave an example like Bob did.
 

narkeleptk

Joined Mar 11, 2019
558
No i don't know what board your talking about sorry. I usually just do my own boards and have them made at jlcpcb because the price is so low. The dip28 atmega328 is pretty easy to use stand alone and fits easy in 2.54 protoboards tho. Might look better for your project if you designed all the stuff yourself but I really have no idea what your professor thinks is acceptable. Your question is hidden in the quote so I doubt many people have seen it. You should edit the post, or re-post the question for better answers from the more experienced members.
 

Thread Starter

jonaas18

Joined Apr 4, 2019
67
No i don't know what board your talking about sorry. I usually just do my own boards and have them made at jlcpcb because the price is so low. The dip28 atmega328 is pretty easy to use stand alone and fits easy in 2.54 protoboards tho. Might look better for your project if you designed all the stuff yourself but I really have no idea what your professor thinks is acceptable. Your question is hidden in the quote so I doubt many people have seen it. You should edit the post, or re-post the question for better answers from the more experienced members.
Will edit the post. The board I was talking about was this. It's called an I/O board (my bad, the name was simple):




When I studied micros, I had to connect my ATMEGA128 to this board. I then had to make a program (coding), send it to the atmega and then the code would run (for example, pressing switch1 would activate the 1st LED, pressing switch2 would activate both 1st and 2nd led, etc.). With this said, when you suggest me doing the Simon Says game, you're referring to both the micro + the board right? I really don't see how I could play the game with only my micro if I have no switches or leds connected to them.
 
Top