Welcome to the North American Subaru Impreza Owners Club Tuesday September 2, 2014
Home Forums WikiNASIOC Products Store Modifications Upgrade Garage
NASIOC
Here you can view your subscribed threads, work with private messages and edit your profile and preferences Home Registration is free! Visit the NASIOC Store NASIOC Rules Search Find other members Frequently Asked Questions Calendar Archive NASIOC Upgrade Garage Logout
Go Back   NASIOC > NASIOC Technical > Electrical & Lighting

Welcome to NASIOC - The world's largest online community for Subaru enthusiasts!
Welcome to the NASIOC.com Subaru forum.

You are currently viewing our forum as a guest, which gives you limited access to view most discussions and access our other features. By joining our community, free of charge, you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content and access many other special features. Registration is free, fast and simple, so please join our community today!

If you have any problems with the registration process or your account login, please contact us.
* Registered users of the site do not see these ads.
Reply
 
Thread Tools Display Modes
Old 04-08-2004, 04:01 PM   #1
verc
Scooby Specialist
 
Member#: 41754
Join Date: Aug 2003
Location: san ramon
Vehicle:
03 wrx
gt35r, 2.5L, meth

Default If you know anything about Controls is an engineer help me urgent

I have this task to do soon so if you have knowledge of controls your help would be appreciated.

So, you know the HKS camp? Or any of those LCD displays that display lots of vital stats of a car?

I need to make one of those.


So I ran through a list of possibilities. FPGA is too expensive, thinking of some kind of microcontroller. I don't have any experience nor really know anything about microcontrollers other than that I have constructed a microprocessor from an FPGA before and have some understanding that I need to buy a PIC programmer which is pretty expensive, and then the actual chips which are pretty cheap.


So yeah, I am doing this for a solar car. I need to take in a bunch of analog signals from various sensors, as well as driver input, and digitally convert into a format I can input into an LCD. Thus, I also need to need to know about the standard for LCD monitors, if there is a single IEEE standard or something, and how to attach pins on my microcontroller to the LCD wire inputs.

Also, does a microcontroller have an internal clock signal or do I need some kind of crystal to general one?

Thanks,
Ambert
* Registered users of the site do not see these ads.
verc is offline   Reply With Quote
Old 04-08-2004, 07:46 PM   #2
WRX-ECE
Scooby Specialist
 
Member#: 12091
Join Date: Nov 2001
Chapter/Region: Tri-State
Location: Bethlehem, Pa
Vehicle:
Old 240Z Broken
Rally car, 350z, 98 RS

Default

Are you doing this for a school project? What is your timeline and budget? Do you have to make an embedded system to do this? What type of LCD? How many signals are you talking about?

BTW, the micro is the easy part, getting all that data digital, and getting it fast enough and displaying it is the had part.

My suggestions based on what I think you will say:

1) It is for school, I need to do this fast and I have lab equipment but no budget.

If weight is not a major use a laptop (or micro PC), HP DAQ and write a Visual basic program. It's easy, fast and has the added ability to store information, tons of it. (or you could use labview too) There are lots of meter plugins for VB that make a nice display possible.

2) I have to make an embedded system to this, it's the point of the project.

Well, I would suggest going with something simple that has a c compiler available and is easy to get cheap. Try a Z-world development board. The jackrabbit is cheap, has all the memory chips and boards already laid out (oh, and some have ethernet built in for extra cool factor). You might even be able to score one for free if you call the company and tell them what you are doing. Oh, and alot of theirs have the display drivers built in.

3) I don't care what LCD but it has to be graphical.

Well, here you run into a problem. Graphical LCDs are hard to get up and running when you haven't done it before and are not very intelligent (i.e. you can't tell it to draw a circle YOU have to draw the circle). I should know, It toke me three months to write the graphical LCD routines for a product of ours. And I already had the subroutines done. We had to make all of our text, graphics and drawing routines from scratch. Then we had to write all of the menu routines etc. etc. A graphical LCD also takes up a ton of memory, to do it the simplest you have to have a memory array the size of the LCD (ours is 64x128 pixels so we have an array that is 1024 bytes, just to hold the LCD image). Using some tricks and time you can get away with alot less but that is harder to do. There are LCDs out there that have built in display drivers in them but they are still not intellegent.

The simplest text solution is an Optrex text display. They have characters built in and you can get them in large sizes (4x20 etc.) It might not be the best but they are by far the easiest. Alot of the development boards have the prerequisite electronics already on them.

4) How many signals are you talking about? Only four?
If it is a small number then you could use a solid state analog selector, they are commonly used in audio electronics to select inputs. (Burr-Browm and Maxim make them I think) You would then need to feed that into a A/D converter. This could be a simple 8-bit parallel converter that could connect to the databus of the micro. Then you would get a 256 value resolution, if that's good enough.


So, the first suggestion of mine is the easiest and fastest. The other way, making an embedded system, is much harder and time consuming but a great experience for a student. Let me know some of the specifics of what you need to accomplich and I can help further.


Jeremy
WRX-ECE is offline   Reply With Quote
Old 04-08-2004, 09:04 PM   #3
verc
Scooby Specialist
 
Member#: 41754
Join Date: Aug 2003
Location: san ramon
Vehicle:
03 wrx
gt35r, 2.5L, meth

Default

Hey Jeremy,

Thanks a lot! Actually I am not that urgent, I just said that hopefully to get a quick response, I have about a year. I am doing this for the electrical team of the Stanford Solarcar project, more details here:
http://www.stanford.edu/group/solarcar/

The problem is that our cockpit is extremely small, and with a regulation helmet on the driver cannot even turn his head. Obviously, however, there needs to be a lot of functionality and data available to the driver. In previous iterations, lots of guages and meters took up unnessesary sopace. I am looking into a way to just take all the inputs from various sensors and display onto an lcd for convinient reference. Our team in fact has a budget of around a quarter million dollars, although for this particular project I would say a few thousand.

for the LCD, well I wasn't thinking of anything fancy. Basically something mono-color, backlit would do. I was thinking of just storing a bunch of characters, and whatever else, in some kind of lookup table to display on screen.


"BTW, the micro is the easy part, getting all that data digital, and getting it fast enough and displaying it is the had part."
right, I really don't know much about what I am getting into (I guess I'll have to ask a few professors as well) although presumably we would just test the various sensors for values to convert. By "getting it fast enough" do you mean issues with timing? Again, I have experience programmning an FPGA and taking various user/environmental inputs and outputing via a 60hz VGA display. My impression is that I will program some device, it will perform some logic to determine it's next state, and save that data in perhaps a dual RAM buffer to send to the display when it is told. Am I correct here? I actually do not know how LCD's function, but I don't think they display by sweeping a signal like cathode tubes. So yes, I'm really interested in learning how to create the graphical LCD routines if you could point me in a direction.

Just bouncing ideas, thanks for your help, really appreciated
Ambert
verc is offline   Reply With Quote
Old 04-09-2004, 01:21 AM   #4
WRX-ECE
Scooby Specialist
 
Member#: 12091
Join Date: Nov 2001
Chapter/Region: Tri-State
Location: Bethlehem, Pa
Vehicle:
Old 240Z Broken
Rally car, 350z, 98 RS

Default

Before I start, you are good at C and C++ right, it will make you life much more simple. Think of an embedded software package as any computer program, the only difference is you also have to design the computer first.

Quote:
Originally posted by verc

The problem is that our cockpit is extremely small, and with a regulation helmet on the driver cannot even turn his head. Obviously, however, there needs to be a lot of functionality and data available to the driver. In previous iterations, lots of guages and meters took up unnessesary sopace. I am looking into a way to just take all the inputs from various sensors and display onto an lcd for convinient reference. Our team in fact has a budget of around a quarter million dollars, although for this particular project I would say a few thousand.
For parts you will need to spend little money. This is a one off and Motorola or anyone else is going to give you free samples for all of your needs. The only expense will be the LCD and the circuit boards. uc, memory and UART chips are not expensive and you can get them by the dozen for free by calling the manufacturer and telling them you are a student using them for a project.


Quote:
Originally posted by verc

for the LCD, well I wasn't thinking of anything fancy. Basically something mono-color, backlit would do. I was thinking of just storing a bunch of characters, and whatever else, in some kind of lookup table to display on screen.
When doing an LCD, graphical is fancy for the n00b. Your idea of the lookup table is correct. That is really the only way. You need to convert characters into arrays and then have them stored in memory. Then you need to write routines that wil take:

putSting("Solor cars are cool", 34,45);

and turn it into pixels on a screen. With an LCD you are working with bits. You need to write the code that will translate "A" into a set of bits to put on the screen
Our code, for instance takes a sting and the X.Y coordinates of the upper left part of the text. Then it translates it into where on the soreage array it needs to be.

Quote:
Originally posted by verc

By "getting it fast enough" do you mean issues with timing? Again, I have experience programmning an FPGA and taking various user/environmental inputs and outputing via a 60hz VGA display. My impression is that I will program some device, it will perform some logic to determine it's next state, and save that data in perhaps a dual RAM buffer to send to the display when it is told. Am I correct here?
What I ment by "getting it fast enough" was simply that in order to sample a bunch of signals, you have to sample each at greater then twice the desired resolution right? well if you have ten signals that all need to be sampled at ten hertz then you need to be able to sample at 100 Hz to get all of them at 10Hz right? So, you need to know how accurate you need to be. This will help you determine if you can serial process the signals or of you need to develope a parallel processing scheme to sample them all.

For instance, I don't car about the speedo reading of the WRX that much, even a 1Hz sample is close enough right? Well, the A/F reading is much more important since at redline the WRX runs at over 100Hz, so I would want a much higher sampling rate to correctly calculate the proper fuel ratios.

Quote:
Originally posted by verc

So yes, I'm really interested in learning how to create the graphical LCD routines if you could point me in a direction.
Think of an LCD as a simple peice of graph paper. The hardware will take care of the CRT like sweeps and stuff on most types you will find. All you need to do is fill in the squares of the paper to get the image you want. And then change that as often as you need. You will need to write/ find the routines to draw a circle on the graph paper.

Drop me a PM with your e-mail address. Next time I'm in the office I'll see if I can get you some sample code to look at. I won't be in my office for at least a week or two.


Jeremy

PS - I still think an optrex character display will be simplest.
WRX-ECE is offline   Reply With Quote
Old 04-09-2004, 02:42 AM   #5
verc
Scooby Specialist
 
Member#: 41754
Join Date: Aug 2003
Location: san ramon
Vehicle:
03 wrx
gt35r, 2.5L, meth

Default

right, actually a much simpler LCD display would do the job. I'm fairly profficient at C and its derivatives. I wouldn't call the system embedded, I guess it's a little too simple, and the whole system's not very integrated. I'm definately interested in any sample code you have, I pm'd you. Thanks again

Ambert
verc is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Anybody know anything about GM TBI V8 engines? IBtbisucks markman Off-Topic 24 08-31-2009 08:40 PM
Do any of you know anything about cars? Georgethefierce Off-Topic 45 12-27-2004 06:24 PM
If you know anyone that would want an auto WRX... Folger Subaru South East Region Forum 10 10-02-2004 07:49 PM
If you know where El Paso is then read this! Sir_Xenon South West Impreza Club Forum -- SWIC 8 04-05-2004 06:45 PM
Do you know anything about this TD04? turbomania Factory 2.0L Turbo Powertrain 6 01-09-2003 10:12 PM


All times are GMT -4. The time now is 04:40 AM.


Powered by vBulletin® Version 3.7.0
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Powered by Searchlight © 2014 Axivo Inc.
Copyright ©1999 - 2014, North American Subaru Impreza Owners Club, Inc.