sequential switching

Thread Starter

blurium

Joined Jul 9, 2008
18
Hi! I am working on a project during my internship and at this phase of my project I have to design a circuit which makes sequential switching. Basically I have a matrix shaped sensor and I have to excite the columns of this transucer/sensor one by one/sequentially. Any ideas, suggestions where to start, how to proceed?:confused:
Thanks in advance..
 

Wendy

Joined Mar 24, 2008
23,415
Think ripple counter feeding a mux/demux circuit. Something like a CMOS 4052 is a dual 1 to 4 mux/demux, and is an electronic analog switch, which should work for your application.

If you need more channels they can be ganged, or you can use a 1 to 16 decoder with a FET, which is a pretty good switch analog.
 

Thread Starter

blurium

Joined Jul 9, 2008
18
Thank you! And also I've read some things about "shift registers" in the internet. Do you think using a "serial in-parallel out shift register" can solve my problem?
 

Wendy

Joined Mar 24, 2008
23,415
Depends, I suspect we are talking about doing two different things. When you say "I have to excite the columns of this transucer/sensor one by one/sequentially" are you talking just with voltage, or are you taking a reading? I assumed you wanted to take a reading, which meant (to me) that you wanted to switch that device to a recording instrument.

Are you wanting to power up the transducer, take a reading, or something entirely different?

A serial in parallel out shift register takes one bit at a time and lines them up to form a byte, basically a form of demux.
 

Thread Starter

blurium

Joined Jul 9, 2008
18
Hmmm, yep we are talking about different things. I am just trying to give test voltage to columns; meaning that I will just power them up.
 

Wendy

Joined Mar 24, 2008
23,415
The shift register you were thinking about would work, it's not how I would do it, but the end effect is the same. Are you needing help with the schematic, or what?
 

Thread Starter

blurium

Joined Jul 9, 2008
18
As a first step, I was trying to find a conceptual solution for the problem.

"it's not how I would do it, but the end effect is the same. " So how would you do it?

Anyway, now I will try to build a schemata for the project, I will probably need help on that too since I am very new on the subject. Its just my third year in Electrical-Electronics engineering now=S. So probably I will come here again on the design phase too.
 

Wendy

Joined Mar 24, 2008
23,415
OK, using your shift register approach, you continously clock it, and have a monostable with a button feeding the input. When you press the button a 1 is generated, and ripples down the shift register until it hits the end of the chain and goes into the bit bucket.

How I would do it, using a 1 of 8 (or whatever) decoder IC, I would use a ripple counter to feed it. This would also create a moving 1 on the outputs, as only one output would be a 1 at a time. How to make it push button is yet to be determined.

There are many solutions to this problem, I'm sure a lot of folks will chip in with theirs (you might even get swamped with them). Pick an approach you are comfortable with and go with it. Your original idea would work quite well, thinking about it.
 

Thread Starter

blurium

Joined Jul 9, 2008
18
and one more thing... This shifting must be very fast in my spesific case. What determines the rate of the shifting? How can I increase it?
 

beenthere

Joined Apr 20, 2004
15,819
Modern logic will clock (change state) at rates up to 10 MHz without breathing hard. Specific families will exceed that rate by an order of magnitude.

If you are switching any power, then the maximum rate may be lower. Can you say what is being switched? Signals? Voltages? Magnitudes?
 

SgtWookie

Joined Jul 17, 2007
22,230
Well, if you're just stepping through your columns, you could use several 4017 Johnson counters in series, that drive Darlington arrays like ULN2803A or ULN2804A for switching grounds, or perhaps MIC2981, MIC2982, M54562FP, M54563FP, M54564FP which are high-voltage high-current source driver arrays. You could clock the whole thing using a pin from a microcontroller, or build a simple clock circuit.

Depends upon how much current you need to apply to these things, and how fast you need to clock it.

What's the voltage and power or voltage and current required by your devices?

What is the frequency or time period you need to run each device?
 

Thread Starter

blurium

Joined Jul 9, 2008
18
Thank you for your valuable responses but since I am very new in the subject, i have to ask a few questions just for my understanding.

Firstly let me redefine my problem. I have a sensor array made up of piezoresistors. You can think of the sensor like a LED matrix, just change the LEDs by variable resistors to imagine (see the attached photo). What I want to do is; excite this resistors column by column sequentially very fast like 50 kHz. What I mean by excitement is giving voltages to these resistors column by column. Also I should note that test voltage will be about 5V. Resistances of resistors vary as seen in attachment.

My knowledge in digital electronics is very narrow. Thus I have a long way to go. But I've read many articles on shift registers, ring counters, flip-flops... However in pratics, I have never build a digital circuit!! =)

So if you have schematic of a circuit performing a similar operation, it would really help. I dont now how to connect the clock circuit, how to connect the pins of the MCU...=S Or if you don't how and where can I learn such information? Any suggestions?

Could I make my self clear about the problem? Anything blurry?..

Thanks again.!

Ayca
 

Attachments

Wendy

Joined Mar 24, 2008
23,415
Your sensor2.bmp shows 4 switches. Is that how many you have, or do you need more? Actually you've come to the right place, I suspect we'll get you where you want to go.

50Khz isn't that fast, so I don't expect any issues. The only question I have is what is the minimum resistance (5V and minimum resistance gives us the current requirements). If I read your graph correctly it is in the neighborhood of 50KΩ.
 
Last edited:

Thread Starter

blurium

Joined Jul 9, 2008
18
No; it is just a basic schematic of the real sensor. In reality we have 42 columns and 48 rows. Of course rows and columns are interchangble, I can use rows or columns to give test voltage, doesn't matter.
 

Wendy

Joined Mar 24, 2008
23,415
One last question, do you want this circuit to sequence automatically, the end bit goes low and the 1st bit starts all over again? Remember the view screen of the original Star Trek series, with the little scrolling lights underneath the screen? Something like that.

What you've described isn't that complex, so I wouldn't worry much about designing it. Building it might be a bit of a challange, but not too much of one.
 

Thread Starter

blurium

Joined Jul 9, 2008
18
Yes exactly, it should start the whole switching cycle again once it has excited the last column since the whole sensor will be used in dynamic tests..
 

Wendy

Joined Mar 24, 2008
23,415
If I understand it correctly you should be able to feed these points straight from the CMOS circuit powered by 5V (.25ma out). I'll the Sgt. lay it out, but it's looking simplier and simplier.
 

SgtWookie

Joined Jul 17, 2007
22,230
Something you didn't mention is that you are going to have to read the resistance of each individual sensor somehow; likely by comparing the voltage drop against a known resistance, and then converting it via an ADC or the like to a digital representation.

The settling time of the ADC will also have a large impact on how fast you can reliably obtain readings, thus affecting the maximum scan rate.

You didn't mention either of these things, and it will have an enormous impact on the design.

Unless, of course, you don't care what the resistance of the piezoresistors are. In that case, I'm afraid I'm not understanding precisely what you are attempting to accomplish.
 

SgtWookie

Joined Jul 17, 2007
22,230
Are you going to need to read the values of these piezoresistors?

Simply scanning the array really isn't much of a problem.

However, if you need to get a result back, then more items need to be discussed, like how many bits of resolution are you going to require. 7-10 bits can be done pretty quickly. It's when you get into the higher resolutions that settling times tend to increase at an exponential rate.

If you didn't need to get a result back, you could probably use inexpensive Darlington arrays to drive your array. However, if you need to get results, you'll need something more like MOSFET switches to turn things on and off; they will introduce fewer variables and inconsistencies.

There's also the issues of parasitic inductance and capacitance; with a large array like you're working on, the parasitics could kill your accuracy and repeatability at high speed.

Anyway, need more input from you before much else can be accomplished.
 
Top