I have an idea for a vehicle that requires acoustic control (under water). Admittedly, I'm not an EE (ME&AE) so I find that not only do I not know what to do but also I don't know what things exist that I should be learning about in order to do what I need to do
I've had a few courses on basic circuits and I know my way around a soldering gun. I've also read quite a few tutorials on MCU programming. Let me explain what I need and then the thought process I've come up with so far; after that, I would appreciate any information you may be able to pass along. I have done a search and have gone through threads for about an hour or so but I can't seem to find what I need.
Desire: 4 channel acoustic transmitter and receiver
In my statements I won't go into specifics about resistors/caps.
I plan to use a mono-frequency transmitter that pulses its signal with different periods for different commands (I think TV remotes do this with IR??). The 4 channels requires 8 bits minimum (right??) so I assume I'll need to go to a 16bit controller (PIC16). For example, if channel 1 is "left and right" then I need a bit for "left" and a bit for "right", right? Anyway, these go into the MCU and the MCU decides which pulse period to spit out. I assume the pulse period would need to be determined via some sort of measurement of clock cycles, is that right? Then the MCU sends its signal to a 555 timer or something (set to 24.5kHz). The timer sends its signal to a transistor which drives the piezo transducer. This is the transmitter and feel free to tell me if I left out some logic.
The receiver begins at the receiving piezo transducer which receives the signal and sends a voltage to another transistor who passes along the amplified signal to a tone decoder. The tone decoder sets a bit to high when it receives a signal at the specified frequency and this bit switches back and forth at the pulse period (from the transmitter). The receiver MCU measures this pulse period (how?????) to determine which bits to set to high and those signals will be routed through appropriate transistors for whichever function I need them to do (actuators, motors, led, etc). Is this about right so far?
General comments, evaluations, and ideas are appreciated.
Now for some specific quetions:
1. Am I going about this entirely wrong?
2. How would a MCU measure the pulse period (or transmit at a pulse period)?
-2.a-Would it measure clock cycles of high and low for a bit or???
--2.a.1-Would the programming logic be "when bit is set to high start a counter that counts when bit is high and through when the bit is low; finish counting when bit is high again. Multiple count by inverse of clock speed to get seconds"
Edit: Sorry if this question is stupid but do most MCUs have the ability to measure voltage on each bit (allowing the use of a single bit per control channel)? Alternatively, can their output bits be set at a specific voltage?
Desire: 4 channel acoustic transmitter and receiver
In my statements I won't go into specifics about resistors/caps.
I plan to use a mono-frequency transmitter that pulses its signal with different periods for different commands (I think TV remotes do this with IR??). The 4 channels requires 8 bits minimum (right??) so I assume I'll need to go to a 16bit controller (PIC16). For example, if channel 1 is "left and right" then I need a bit for "left" and a bit for "right", right? Anyway, these go into the MCU and the MCU decides which pulse period to spit out. I assume the pulse period would need to be determined via some sort of measurement of clock cycles, is that right? Then the MCU sends its signal to a 555 timer or something (set to 24.5kHz). The timer sends its signal to a transistor which drives the piezo transducer. This is the transmitter and feel free to tell me if I left out some logic.
The receiver begins at the receiving piezo transducer which receives the signal and sends a voltage to another transistor who passes along the amplified signal to a tone decoder. The tone decoder sets a bit to high when it receives a signal at the specified frequency and this bit switches back and forth at the pulse period (from the transmitter). The receiver MCU measures this pulse period (how?????) to determine which bits to set to high and those signals will be routed through appropriate transistors for whichever function I need them to do (actuators, motors, led, etc). Is this about right so far?
General comments, evaluations, and ideas are appreciated.
Now for some specific quetions:
1. Am I going about this entirely wrong?
2. How would a MCU measure the pulse period (or transmit at a pulse period)?
-2.a-Would it measure clock cycles of high and low for a bit or???
--2.a.1-Would the programming logic be "when bit is set to high start a counter that counts when bit is high and through when the bit is low; finish counting when bit is high again. Multiple count by inverse of clock speed to get seconds"
Edit: Sorry if this question is stupid but do most MCUs have the ability to measure voltage on each bit (allowing the use of a single bit per control channel)? Alternatively, can their output bits be set at a specific voltage?
Last edited: