DIY Virtual Walls??

Inside the Roomba and Scooba and more, Cool mods, Repair and Upgrades - including the all new iRobot Create Kit. Let's void that warranty baby!

Re: newbie help

Postby misha680 » October 6th, 2008, 12:47 am

Gordon wrote:
misha680 wrote:Hi, I want to build such a virtual wall. ... Could anyone please check to see if this is correct and perhaps suggest something about these two questions? ...
Sorry, I can't spend much time on this "checking". So, what follows is not a complete critique of your post, but only a few comments about obvious items I noticed.
1 x 4093...
1 x BC547...
DigiKey links for those two look reasonable.

This LED, SFH482, appears to be an 880nm wavelength device, and its in what may be an expensive metal jacket. You need a 940nm LED.
..."79L05" --- what is this, ...{?}
That, looks like a typo, to me. It should be "78L05"; which would make it a +5Vdc regulator.
...do I need it if I use a voltage-regulated power supply (wall wort) that is 5V?
You would not need it IF you truly use a five-volt power supply. I suppose 5Vdc wall-warts ARE available with regulated output voltage, but I've not noticed any that come with domestic products. If you have the supply you intend to use, just plug it into the mains and measure its no-load output voltage to see if it is greater than, say, 1.1 * 5.0V = 5.5V (for a +/- 10% regulation).
Resistors:...{&} ... capacitors
Sorry, I can't run through those values for you. But, I would suggest you breadboard the oscillators with variable timing resistances (multi-turn trimmers, in place of fixed resistors, two places). Set them to the ckt's nominal values, and adjust as required to seek optimum frequencies. Afterwards, measure the resistance of each trimmer and determine whether a single, standard, fixed resistance can be substituted. You might have to parallel two values to get the size you need for each timing resistance!

I don't know how critical the carrier & modulation frequencies are; and, whether caps & resistors having ordinary tolerances on their nominal values, provides a good chance of success. You will either have to find this out for yourself, or depend on another member--who has been through a DIY-VWU build--to advise you.


Thank you very much for your response. I will let you know my progress.

Misha
misha680
 
Posts: 14
Joined: May 15th, 2008, 10:10 pm
Location: Houston

Re: newbie help

Postby misha680 » October 8th, 2008, 12:47 am

Thank you again. I have two quick questions, both of which I'm sure are quite common sense to y'all, but I am pretty stumped by them still.

1. For resistors, how do I know which wattage to use (1/4,1/2,1,or 2 W)? I am assuming I take it from the specs of the IR emitter, I know watts = volts * amps, and from the specs for my IR emitter I'm seeing:

Reverse voltage 5 V
Forward current 200 mA
Surge current 2.5 A

Also (don't think this is relevant but maybe it is, seems more like "heat loss"
the way I read it):
Power dissipation 470 mW

So I'm taking the wattage I need in my resistors is "Reverse voltage" * "Forward current" = 5 V * .2 A = 1 W ? Someone told me you don't want to go _above_ the IR emitter wattage in your resistors as it will cause a voltage drop??? Not sure that makes sense to me.

2. Second question deals with your comment & multi-turn trimmers:

Gordon wrote:Sorry, I can't run through those values for you. But, I would suggest you breadboard the oscillators with variable timing resistances (multi-turn trimmers, in place of fixed resistors, two places). Set them to the ckt's nominal values, and adjust as required to seek optimum frequencies. Afterwards, measure the resistance of each trimmer and determine whether a single, standard, fixed resistance can be substituted. You might have to parallel two values to get the size you need for each timing resistance!


From what I understand the multi-turn trimmer is a type of potentiometer (or I guess capacitor as well from Wikipedia but so far I've only run into the potentiometer kind) that acts like two resistors in series (not sure about that,
looks like it is more complicated b/c has three contacts but I am assuming you are proposing only hooking up two of the contacts). Now my immediate concern is when they are sold they are sold as, say, 20 ohm or 10 ohm, it seems like they already have an associated resistance with them and although they have a screw you can adjust I am not sure I understand if this "20 ohm" is, say, the max resistance is 20 ohm and you can go down from 20 to zero with the screw, or the screw just lets you vary slightly around 20 ohm, or something else entirely? Sorry, I wish I could find a good explanation or had an electronics expert here to ask, but honestly I don't and this is all I have gotten to understand so far. Any leads/directions/even places to look if that's all that one has would be greatly appreciated.

I hate to use Radio Shack as an example, but would something like this fit the bill:
http://www.radioshack.com/product/index ... age=search?

Thank you so much.

Misha
misha680
 
Posts: 14
Joined: May 15th, 2008, 10:10 pm
Location: Houston

Re: newbie help

Postby misha680 » November 10th, 2008, 10:24 am

Gordon wrote:This LED, SFH482, appears to be an 880nm wavelength device, and its in what may be an expensive metal jacket. You need a 940nm LED.


Btw, why the 940 nm and not 880 nm? It looks like the original thread schematic used the 880 nm SFH482, and per what looks like the virtual wall patent app the specs are 880-980 nm range:
http://www.wipo.int/pctdb/en/wo.jsp?IA= ... SPLAY=DESC

. Is 940 to get peak in this range?

Thank you
Misha
misha680
 
Posts: 14
Joined: May 15th, 2008, 10:10 pm
Location: Houston

Re: newbie help

Postby Gordon » November 11th, 2008, 2:32 pm

misha680 wrote:
Gordon wrote:This LED, SFH482, appears to be an 880nm wavelength device, and its in what may be an expensive metal jacket. You need a 940nm LED.
Btw, why the 940 nm and not 880 nm?
I said that because, once upon a time, in a forum, far, far away, a member of that forum reported measuring spectral emissions from the VWU and Home-Base (items which were provided with Discovery Roombas). The IR-LEDs were reported peaking at 940 nm. He also was the first to publish the wave-train data emitted by those IR-LEDs. Unfortunately, he stripped all that Roomba data from his web-site just a couple years later.
It looks like the original thread schematic used the 880 nm SFH482, and per what looks like the virtual wall patent app the specs are 880-980 nm range:...
That is true, and I can easily agree with the patent data you dug up, since it encompasses 940 nm.
... Is 940 to get peak in this range?
Precisely! However, it turns out to not make any sensible difference. My memory was telling me there was enough short-wave roll-off (below 940 nm) of a silicon detector's spectral response to make a difference, so I googled some data to show you. Trouble is, I showed myself! Hah! :-) Showed myself that the response curve is somewhat flat near its peak, and that detection of an 880 nm emission should result in an electrical signal that is only a few percent less than if stimulated by 940 nm of the same incident power. Here's the curve I found:

Image
(Source: http://physics.nist.gov/Pubs/TN1421/detector.html)

You might even find some 880 nm IR-LEDs that have higher radiance power output than the 940 nm diodes, and that difference could easily swing the selection over to using the 880 nm. That's just one more thing to research for this project!

Keep in mind that rj5555 resides in Spain, and he was faced with buying any reasonable IR-LED for his DIY project. You may not be able to procure the same LED that he bought, and then you will be faced with selecting an alternate, which IS available, and which will function as intended.

Misha, that sort of thinking brings me to a point where I may now respond to your questions in your 7 October post.

First, I want to point out that I had no intention of ignoring you, but, I did forget about your project, and AFAIK, I never received notification of your previous post. So it was about 30+ days later (not until last Friday) that I serendipitously came across that aging post!

Since then, I have been mulling in my mind how to tell you that I think this DYI-VWU project may be beyond your means, i.e., your current state of EE capability. I say that because the questions you ask in that 081007 post indicate lack of hardware experience and lack of EE calculation knowledge. Knowledge that you must have, or know where to find refresher material, when you set out to alter (change wiring or use alternate components) a schematic diagram to accommodate differing conditions. Essentially, I think you are likely at the kit-building stage, where you buy a bag of parts and put them together per instructions; and, the thing works.

I don't see this DIY-VWU project falling into that category at all. Have you noticed there has been no success stories being announced from the latest builders (1oooop, et al)? Why not? Even at the start of this thread, rj said only that the circuit(s) worked, but, gave no details about how well they worked as compared to an iRbt VWU.

As I casually keep track of the evolution of this thread, I find I'm not at all convinced that enough radiant power can be emitted by the circuits being offered; and that notion is only based on seeing what iRbt EEs had to do to drive the VWU's horizontal-beam LED in their VWU (I've done no calcs along that line, because I have zero interest in fabbing a DIY-VWU (at this point in time)).

I'll address some of your 081007 questions to close out this post:
misha680 wrote:1. For resistors, how do I know which wattage to use (1/4,1/2,1,or 2 W)?
Those data should have been specified with / on the schematic diagram. If not there, you will have to compute their power dissipation, and then apply some 'safety factor'. I suggest you read and understand what liamfoxtrot reported in this post:

http://www.robotreviews.com/chat/viewto ... 2859#32859

...
misha680 wrote:I am assuming I take it from the specs of the IR emitter, I know watts = volts * amps, and from the specs for my IR emitter I'm seeing:...
Specification data, and the circuit, is all you have to work with. The approach you outlined is not viable.
misha680 wrote:...2. Second question deals with your comment & multi-turn trimmers:
Gordon wrote:...I would suggest you breadboard the oscillators with variable timing resistances ... Set them to the ckt's nominal values, and adjust as required to seek optimum frequencies. Afterwards, measure the resistance of each trimmer and determine whether a single, standard, fixed resistance can be substituted. You might have to parallel two values to get the size you need for each timing resistance!
misha680 wrote:...From what I understand the multi-turn trimmer is a type of potentiometer (or I guess capacitor ...
Yes, you could use "variable capacitors", but, life would be more difficult that way. I was referring to a variable resistance. And, you ultimately found the proper type of device at Radio Shack. Think of it as a fixed-value resistor, one terminal at each end (and it is between those two terminals that its rated resistance can be measured), but, there is also a sliding contact that can be moved from end to end. That makes it possible to pick off any resistance (relative to one of the terminals) from zero to max-R, as the slider moves from one end terminal to the far end. The slider is wired out to a (generally) middle terminal. Trimmers have that slider affixed to a fine-pitch screw-thread, which makes it easy to position the slider quite accurately.
misha680 wrote:...from Wikipedia ... I've only run into the potentiometer kind...
Go back to wiki-land, to find a good explanation of the potentiometer--you'll see an example of how its used to provide a variable voltage (not that its used that way for VWU work). Also look at the definition for "rheostat", since that is the form you will / may be using the trimmer. The rheostat ignores one end terminal. Only the slider and one end-terminal are connected to your circuit (as a variable resistance).

Misha, that about does it.

I want to reiterate my suggestion that this DIY-VWU project may be more involved that you can imagine. What will you do if you put it all together and find that nothing works? How will you trouble-shoot the device. You really need access to an oscillscope to see what is happening in the circuit. How will you even know when optimum frequency settings have been acquired, unless they can be measured?

You should become familiar with iRbt's version of the VWU. There's a schematic posted in this forum (page-2 of this thread has a link, I think).

You should also become familiar with the sensor module that responds to the VWU & Home-Base beams. Search for device "PL-IRM0101-3". Its not the component used in Roomba/Scooba, but, its mfr provides better tech-data in its data sheet than mfrs of similar products do.

Finally, and I am not intending to suggest that you refrain from asking for help via this forum when I say this, but, frankly I can't spare the time it would take me to tutor you throughout this project. So, if you continue with this project, and post questions, it is unlikely that I will be responding to them (exceptions being: where I have made incorrect statements, or quickie, yes/no responses). Besides, you will fare better if one of the DIY-VWU constructors provides you with information that you require.

Good fortune to you!
Gordon
Robot Master
 
Posts: 4304
Joined: April 6th, 2005, 2:02 am
Location: Santa Ynez, CA USA

Re: newbie help

Postby misha680 » November 12th, 2008, 2:34 am

Gordon wrote:
misha680 wrote:
Gordon wrote:This LED, SFH482, appears to be an 880nm wavelength device, and its in what may be an expensive metal jacket. You need a 940nm LED.
Btw, why the 940 nm and not 880 nm?
I said that because, once upon a time, in a forum, far, far away, a member of that forum reported measuring spectral emissions from the VWU and Home-Base (items which were provided with Discovery Roombas). The IR-LEDs were reported peaking at 940 nm. He also was the first to publish the wave-train data emitted by those IR-LEDs. Unfortunately, he stripped all that Roomba data from his web-site just a couple years later.
It looks like the original thread schematic used the 880 nm SFH482, and per what looks like the virtual wall patent app the specs are 880-980 nm range:...
That is true, and I can easily agree with the patent data you dug up, since it encompasses 940 nm.
... Is 940 to get peak in this range?
Precisely! However, it turns out to not make any sensible difference. My memory was telling me there was enough short-wave roll-off (below 940 nm) of a silicon detector's spectral response to make a difference, so I googled some data to show you. Trouble is, I showed myself! Hah! :-) Showed myself that the response curve is somewhat flat near its peak, and that detection of an 880 nm emission should result in an electrical signal that is only a few percent less than if stimulated by 940 nm of the same incident power. Here's the curve I found:

Image
(Source: http://physics.nist.gov/Pubs/TN1421/detector.html)

You might even find some 880 nm IR-LEDs that have higher radiance power output than the 940 nm diodes, and that difference could easily swing the selection over to using the 880 nm. That's just one more thing to research for this project!

Keep in mind that rj5555 resides in Spain, and he was faced with buying any reasonable IR-LED for his DIY project. You may not be able to procure the same LED that he bought, and then you will be faced with selecting an alternate, which IS available, and which will function as intended.

Misha, that sort of thinking brings me to a point where I may now respond to your questions in your 7 October post.

First, I want to point out that I had no intention of ignoring you, but, I did forget about your project, and AFAIK, I never received notification of your previous post. So it was about 30+ days later (not until last Friday) that I serendipitously came across that aging post!

Since then, I have been mulling in my mind how to tell you that I think this DYI-VWU project may be beyond your means, i.e., your current state of EE capability. I say that because the questions you ask in that 081007 post indicate lack of hardware experience and lack of EE calculation knowledge. Knowledge that you must have, or know where to find refresher material, when you set out to alter (change wiring or use alternate components) a schematic diagram to accommodate differing conditions. Essentially, I think you are likely at the kit-building stage, where you buy a bag of parts and put them together per instructions; and, the thing works.

I don't see this DIY-VWU project falling into that category at all. Have you noticed there has been no success stories being announced from the latest builders (1oooop, et al)? Why not? Even at the start of this thread, rj said only that the circuit(s) worked, but, gave no details about how well they worked as compared to an iRbt VWU.

As I casually keep track of the evolution of this thread, I find I'm not at all convinced that enough radiant power can be emitted by the circuits being offered; and that notion is only based on seeing what iRbt EEs had to do to drive the VWU's horizontal-beam LED in their VWU (I've done no calcs along that line, because I have zero interest in fabbing a DIY-VWU (at this point in time)).

I'll address some of your 081007 questions to close out this post:
misha680 wrote:1. For resistors, how do I know which wattage to use (1/4,1/2,1,or 2 W)?
Those data should have been specified with / on the schematic diagram. If not there, you will have to compute their power dissipation, and then apply some 'safety factor'. I suggest you read and understand what liamfoxtrot reported in this post:

http://www.robotreviews.com/chat/viewto ... 2859#32859

...
misha680 wrote:I am assuming I take it from the specs of the IR emitter, I know watts = volts * amps, and from the specs for my IR emitter I'm seeing:...
Specification data, and the circuit, is all you have to work with. The approach you outlined is not viable.
misha680 wrote:...2. Second question deals with your comment & multi-turn trimmers:
Gordon wrote:...I would suggest you breadboard the oscillators with variable timing resistances ... Set them to the ckt's nominal values, and adjust as required to seek optimum frequencies. Afterwards, measure the resistance of each trimmer and determine whether a single, standard, fixed resistance can be substituted. You might have to parallel two values to get the size you need for each timing resistance!
misha680 wrote:...From what I understand the multi-turn trimmer is a type of potentiometer (or I guess capacitor ...
Yes, you could use "variable capacitors", but, life would be more difficult that way. I was referring to a variable resistance. And, you ultimately found the proper type of device at Radio Shack. Think of it as a fixed-value resistor, one terminal at each end (and it is between those two terminals that its rated resistance can be measured), but, there is also a sliding contact that can be moved from end to end. That makes it possible to pick off any resistance (relative to one of the terminals) from zero to max-R, as the slider moves from one end terminal to the far end. The slider is wired out to a (generally) middle terminal. Trimmers have that slider affixed to a fine-pitch screw-thread, which makes it easy to position the slider quite accurately.
misha680 wrote:...from Wikipedia ... I've only run into the potentiometer kind...
Go back to wiki-land, to find a good explanation of the potentiometer--you'll see an example of how its used to provide a variable voltage (not that its used that way for VWU work). Also look at the definition for "rheostat", since that is the form you will / may be using the trimmer. The rheostat ignores one end terminal. Only the slider and one end-terminal are connected to your circuit (as a variable resistance).

Misha, that about does it.

I want to reiterate my suggestion that this DIY-VWU project may be more involved that you can imagine. What will you do if you put it all together and find that nothing works? How will you trouble-shoot the device. You really need access to an oscillscope to see what is happening in the circuit. How will you even know when optimum frequency settings have been acquired, unless they can be measured?

You should become familiar with iRbt's version of the VWU. There's a schematic posted in this forum (page-2 of this thread has a link, I think).

You should also become familiar with the sensor module that responds to the VWU & Home-Base beams. Search for device "PL-IRM0101-3". Its not the component used in Roomba/Scooba, but, its mfr provides better tech-data in its data sheet than mfrs of similar products do.

Finally, and I am not intending to suggest that you refrain from asking for help via this forum when I say this, but, frankly I can't spare the time it would take me to tutor you throughout this project. So, if you continue with this project, and post questions, it is unlikely that I will be responding to them (exceptions being: where I have made incorrect statements, or quickie, yes/no responses). Besides, you will fare better if one of the DIY-VWU constructors provides you with information that you require.

Good fortune to you!


Thank you very much for your very thorough and detailed reply. I appreciate especially the part about the wavelength of transmission I need to use, it was very detailed and I learned a lot about your recommendations and reasons behind them. I realize that this project is quite a challenge given my skill set, but at the same time have undertaken similar projects that have forced me to learn quite a bit on my own about circuits/electronics/other things and have generally done quite well eventually. I am quite stubborn and persistent if nothing else. Additionally, I realize that since you have not made a VWU nor are interested in making one yourself, advising me may not be in the best interest of your time, although you have done a very thorough job with your advice which I do appreciate. I understand this completely.

I have actually been finding help at another forum lately:
http://forum.allaboutcircuits.com/showt ... hp?t=14899

Currently I have breadboarded my circuit and am seeing oscillation of ~450 Hz on top of a 35 kHz carrier. I do not believe my Roomba is detecting this at the moment (or at least appropriately), but intend to keep working on it (it seems Joe on an iRobot Create uses 37 kHz, found this in a different forum; in any case am still troubleshooting my findings). Granted, if I just wanted a VWU and nothing else, I would buy one. However, honestly, these projects are more about me learning and challenging myself with new skills than anything else, and although can be quite frustrating, are very rewarding at the end (e.g., to give you an idea, I decided to automate my HVAC system from scratch, which was some learning in soldering, a lot of HVAC learning which I admit is generally a well documented/common system, control from my Linux router, etc. Currently, I have my HVAC completely under my control, as well as lights, and some temperature sensors that I soldered up. I am reporting temperature measurements to several weather observation programs, and have actually found the sensors and placement to be quite reliable as rated by these programs. Additionally, I taught myself more advanced soldering and circuitry skills by making circuits to control my Roomba wirelessly using the Zigbee protocol, and again having access to these from my Linux router through the addition of serial ports on it; again all the soldering was completely new to me, and a lot of the circuitry as well. So I am fairly confident that, if nothing else, I will keep banging my head on this project until either I achieve success, or, worst case, fail after several more months at least probably; in any case, I guess this is what I do for "fun" and thanks for all your help so far).

Misha

p.s. btw, I hope the last paragraph does not sound like bragging, I certainly do not mean it that way. But yet I know I am very very stubborn, and am quite proud when I am in fact able to learn new skills and accomplish success in one of these projects, and I guess that's what motivates me to keep trying...
misha680
 
Posts: 14
Joined: May 15th, 2008, 10:10 pm
Location: Houston

Re: newbie help

Postby JoeCreate » November 12th, 2008, 11:57 am

It seems the simplest way to make a virtual wall is with a PIC or some other micro that can produce a PWM signal on an output PIN. Tune the PWM to generate a 38khz signal (turn the PIN onoffonoffonoff... at a rate of 38000 times per second with each on-time equal to the off-time). Connect an IR LED (Radio Shack has one that works just fine) with maybe a 50ohm resistor (smaller resistor=brigher light=longer range). Then have your program loop turn that PWM signal ON for 1ms, then OFF for 1ms, then ON for 1ms, then OFF for 1ms, etc... That's a Virtual Wall signal.

You can pull out the virtual wall code from http://irobotcreate.googlepages.com/Cre ... aconMain.c for a PIC16F690 which comes with the Microchip PICKit2 (their cheapest starter kit). But the concept is the same no matter what microprocessor you use and generating a PWM signals is a pretty common task.
JoeCreate
 
Posts: 3
Joined: August 20th, 2008, 3:53 am

Re: newbie help

Postby Gordon » November 13th, 2008, 6:50 pm

misha680 wrote:...and am quite proud when I am in fact able to learn new skills and accomplish success in one of these projects, and I guess that's what motivates me to keep trying...
Very good, Misha. I too enjoy following the same modus operandi!

You are attempting to follow posted information regarding construction of a unit that will serve as an alternate to one of iRbt's VWUs. There are several reasons for which one might like to build such a device (e.g., device miniaturization, and simplification, to permit a dedicated installation; all for not too many dollars).

You are building a transmitter. To achieve success, you must have assurance that the intended receiver will be able to work with that transmitted signal. I've not seen such assurance in this DIY-thread. It was for that reason that I suggested getting acquainted with the general characteristics of the receiver ("Infrared Remote Control Receiver Module", call it "IRCRM" for short), even though we don't know the exact mfr & P/N of the IRCRM built into iRbt's robots.

Once you know what signal characteristics the IRCRM is expecting, you will better know what is required of the transmitter. Until yesterday, you would have needed an O-scope to learn the truth about that signal.

Prompted by JoeCreate's contribution to this thread, I would like to ask you whether you noticed the correct carrier frequency (38kHz) which he announced?

In my own mind I had been questioning use of "35 kHz" that was specified at the start of this thread. I have some old notes (from a 2004 vintage forum-message) that indicated a carrier at 38 kHz. Since my notes had no credentials (no trail to the source of that datum) to back them, and since rj5555 is a practicing EE (qualified, and a known source of good advice), it was then necessary to assume rj had done his own measurement. I also had no access to instrumentation by which I could measure characteristics of the wave-form.

In the meantime, some members who had attempted the DIY-VWU project found it necessary to adjust frequency. None said where the final operating point was found. ... Time passed.

Early this year, I was googling for information about Roomba's remote-control detector (trying to zone in on the "IRCRM" used in iRbt's robots). While I did not sniff out the precise component that we see built into Roomba & Scooba bumpers, I did find many, many mfrs of many, many similar units. These things are used wherever and in whatever entertainment device may be controlled via hand-held IR-remote; and, those mfrs often offer receivers which feature various options. One option is to provide units which accept different (but fixed) carrier frequencies. 35kHz and 38kHz are just two out of (at least) a half dozen choices.

Hence, one point about that variability is, rj could have been correct about the 35kHz carrier.

Earlier this year I got geared up to measure dynamic signals, so yesterday, I decided to check out the LED-driver signal in a 2004 vintage VWU (the same unit which yielded the posted schematic diagram in this forum). The scope's probe got clipped onto jumper "J3" (which is sig-out from the U1 timing IC (a 'chip-on-board' type of construction)). J3 is handy, since the PWB need not be dismounted from the VWU's housing. Sig_GND = battery-BLK terminal.

The cells in this unit were so weak, I thought the pilot LED would start blinking at any time. I could see peak signal voltage falling as testing progressed. Yet, that drooping power-supply did not perturb the sought after data--shown next.

This first image shows not only the VWU's LED-driver wave-train, but also the shows the demodulated output of a 2XXX-Roomba's IRCRM. On the plot, we see two plus pulse-packets (violet trace, in which rising voltage correlates with increasing IR-LED current), at top; and, at bottom the IRCRM's output wave (blue trace).
Image
Markers "1" & "2" on the IRCRM-signal permit evaluation of the wave's period, some 2030 ?s (vs 2000 ?s, if actually 500 Hz).

The second image was captured with factor 2.5X increase of time-scale sensitivity, which begins to resolve (what will be shown to be) the 38 kHz pulsing.
Image
Shifting plot-types now, from signal-voltage vs. time, to signal-voltage vs. frequency (and ignoring the IRCRM's wave), it is easier to mark the VWU's fundamental frequencies of carrier, and modulation wave-forms. Marker "1" tags the carrier, and "2", way off to the left, tags the 500 Hz fundamental:
Image
Looking in the table at top, where column "M1:Chan A" intersects with the "Freq." row, we see "38.03 kHz" for the marker-1 position. Marker-2 is similarly shown, but as 0.494 kHz, for the nominal 500 Hz fundamental. By zooming in, to spread lower frequencies over the full graph, the '500' Hz fundamental can be more easily picked out.

In this final image, marker-1 is affixed to the modulation's fundamental, and the table above the plot now indicates ~492 Hz.
Image
(Explanatory note: Marker-2 is affixed to a spurious frequency, as is the 'tracer dot'. I was hunting sources of disturbances causing asynchronous amplitude modulations of the VWU's output. The spurious interference appeared to be generated within the U1 IC, since neither 60Hz, or 120 Hz spectra show with any strength).

While I was well convinced (pre-measurements) that Joe's 38 kHz is correct (he has built the VW, and elsewhere reported success), I am now more convinced by actual measurement data.

Misha, it seems you now must choose between the old path, a path still filled with rocks & hard places, or the easy path laid out for you by Joe. I don't recall, from reading your posts, any statement of objectives, other than to build your own VW. So, I see questions about that missing statement. Do your goals include any of:

a) My DIY-VWU shall deflect the nominal-robot at: 1 ft < range < 9 ft, minimum.

b) My DIY-VWU shall inhibit the nominal-robot's passage through three-foot wide, or smaller, openings.

c) My DIY-VWU shall be alkaline-cell powered.

If (a) is applicable, I think I can supply additional information; but, might also ask more questions in the process! :-)
Last edited by Gordon on November 14th, 2008, 4:26 pm, edited 1 time in total.
Gordon
Robot Master
 
Posts: 4304
Joined: April 6th, 2005, 2:02 am
Location: Santa Ynez, CA USA

Re: newbie help

Postby JoeCreate » November 13th, 2008, 7:48 pm

FYI. I believe I found the Virtual Walls were running on a 38khz signals by connecting the LED of a virtual wall directly to my oscilloscope and simply measuring it.

I have also used 38khz IR Receivers to receive the Virtual Wall signals. The IR Receiver simply outputs 1ms on 1ms off pulse when a Virtual Wall is detected. These could be used to add additional (directional) IR receivers to your robot to be able to tell what direction a virtual wall is transmitting from.
JoeCreate
 
Posts: 3
Joined: August 20th, 2008, 3:53 am

Re: newbie help

Postby misha680 » November 14th, 2008, 2:58 am

Gordon wrote:
misha680 wrote:...and am quite proud when I am in fact able to learn new skills and accomplish success in one of these projects, and I guess that's what motivates me to keep trying...
Very good, Misha. I too enjoy following the same modus operandi!

You are attempting to follow posted information regarding construction of a unit that will serve as an alternate to one of iRbt's VWUs. There are several reasons for which one might like to build such a device (e.g., device miniaturization, and simplification, to permit a dedicated installation; all for not too many dollars).

You are building a transmitter. To achieve success, you must have assurance that the intended receiver will be able to work with that transmitted signal. I've not seen such assurance in this DIY-thread. It was for that reason that I suggested getting acquainted with the general characteristics of the receiver ("Infrared Remote Control Receiver Module", call it "IRCRM" for short), even though we don't know the exact mfr & P/N of the IRCRM built into iRbt's robots.

Once you know what signal characteristics the IRCRM is expecting, you will better know what is required of the transmitter. Until yesterday, you would have needed an O-scope to learn the truth about that signal.

Prompted by JoeCreate's contribution to this thread, I would like to ask you whether you noticed the correct carrier frequency (38kHz) which he announced?

In my own mind I had been questioning use of "35 kHz" that was specified at the start of this thread. I have some old notes (from a 2004 vintage forum-message) that indicated a carrier at 38 kHz. Since my notes had no credentials (no trail to the source of that datum) to back them, and since rj5555 is a practicing EE (qualified, and a known source of good advice), it was then necessary to assume rj had done his own measurement. I also had no access to instrumentation by which I could measure characteristics of the wave-form.

In the meantime, some members who had attempted the DIY-VWU project found it necessary to adjust frequency. None said where the final operating point was found. ... Time passed.

Early this year, I was googling for information about Roomba's remote-control detector (trying to zone in on the "IRCRM" used in iRbt's robots). While I did not sniff out the precise component that we see built into Roomba & Scooba bumpers, I did find many, many mfrs of many, many similar units. These things are used wherever and in whatever entertainment device may be controlled via hand-held IR-remote; and, those mfrs often offer receivers which feature various options. One option is to provide units which accept different (but fixed) carrier frequencies. 35kHz and 38kHz are just two out of (at least) a half dozen choices.

Hence, one point about that variability is, rj could have been correct about the 35kHz carrier.

Earlier this year I got geared up to measure dynamic signals, so yesterday, I decided to check out the LED-driver signal in a 2004 vintage VWU (the same unit which yielded the posted schematic diagram in this forum). The scope's probe got clipped onto jumper "J3" (which is sig-out from the U1 timing IC (a 'chip-on-board' type of construction)). J3 is handy, since the PWB need not be dismounted from the VWU's housing. Sig_GND = battery-BLK terminal.

The cells in this unit were so weak, I thought the pilot LED would start blinking at any time. I could see peak signal voltage falling as testing progressed. Yet, that drooping power-supply did not perturb the sought after data--shown next.

This first image shows not only the VWU's LED-driver wave-train, but also the shows the demodulated output of a 2XXX-Roomba's IRCRM. On the plot, we see two plus pulse-packets (violet trace, in which rising voltage correlates with increasing IR-LED current), at top; and, at bottom the IRCRM's output wave (blue trace).
Image
(top attachment)
Markers "1" & "2" on the IRCRM-signal permit evaluation of the wave's period, some 2030 ?s (vs 2000 ?s, if actually 500 Hz).

The second image was captured with factor 2.5X increase of time-scale sensitivity, which begins to resolve (what will be shown to be) the 38 kHz pulsing.
Image
(2nd from top attachment)
Shifting plot-types now, from signal-voltage vs. time, to signal-voltage vs. frequency (and ignoring the IRCRM's wave), it is easier to mark the VWU's fundamental frequencies of carrier, and modulation wave-forms. Marker "1" tags the carrier, and "2", way off to the left, tags the 500 Hz fundamental:
Image
(3rd from top attachment)
Looking in the table at top, where column "M1:Chan A" intersects with the "Freq." row, we see "38.03 kHz" for the marker-1 position. Marker-2 is similarly shown, but as 0.494 kHz, for the nominal 500 Hz fundamental. By zooming in, to spread lower frequencies over the full graph, the '500' Hz fundamental can be more easily picked out.

In this final image, marker-1 is affixed to the modulation's fundamental, and the table above the plot now indicates ~492 Hz.
Image
(last attachment)
(Explanatory note: Marker-2 is affixed to a spurious frequency, as is the 'tracer dot'. I was hunting sources of disturbances causing asynchronous amplitude modulations of the VWU's output. The spurious interference appeared to be generated within the U1 IC, since neither 60Hz, or 120 Hz spectra show with any strength).

While I was well convinced (pre-measurements) that Joe's 38 kHz is correct (he has built the VW, and elsewhere reported success), I am now more convinced by actual measurement data.

Misha, it seems you now must choose between the old path, a path still filled with rocks & hard places, or the easy path laid out for you by Joe. I don't recall, from reading your posts, any statement of objectives, other than to build your own VW. So, I see questions about that missing statement. Do your goals include any of:

a) My DIY-VWU shall deflect the nominal-robot at: 1 ft < range < 9 ft, minimum.

b) My DIY-VWU shall inhibit the nominal-robot's passage through three-foot wide, or smaller, openings.

c) My DIY-VWU shall be alkaline-cell powered.

If (a) is applicable, I think I can supply additional information; but, might also ask more questions in the process! :-)


Wow, thank you very much, that is quite helpful. Actually I did notice the 38 kHz in Joe's post, but your findings definitely seem to confirm it. It is very helpful to have such precise frequency measurements on at least one vintage VWU. Prior to your post, I had actually already ordered some LNA2904L-ND (IR LED 950NM 20 DEG T1-3/4) per Joe's recommendation (I know your last post actually detailed why this was not necessary, but I decided what the heck they're cheap might as well try) and also since I already have a bunch of 10K potentiometers/trimmers one of which I used in my circuit last weekend to get the original 35 kHz (I figured these out eventually before your recent reply but I appreciate it very much anyhow), I bought some capacitors (I believe off the top of my head 0.3 uF, but in any case I just needed > 2.2 uF which I believe will allow me to use a potentiometer for the low frequency as well) so I can get the low frequency accurate. I am looking forward to trying everything this weekend with the appropriate frequencies, and hopefully getting _some_ kind of response from my Roomba. I wish I could post a much more detailed reply to your message right now but it is late and I am quite tired atm.

In any case, my reason for building the VWU is basically since I have remote control of my robot from my router now, I want to run it automatically, but need the virtual wall to be active when its running. Easiest way to do this is to simply power it off a wall wart, which is what I'm doing, as I don't really see any reason to have it off (well saving the environment I guess but I would imagine it would be quite a small power drain as far as other utilities etc in my home; worst case I can always have it run off the XBee chip as well and just turn it on when needed). A lot was just for learning.

So given this, I guess the point was just to deflect the robot approx 2.5-3 ft which is the doorway between my living room (where I do want the robot) and my bedroom (where I don't want the robot, as there may be junk/things on the floor it shouldn't eat/get stuck on). The whole point of the projects has been "simplifying my life", although unlike the AC/heat and lighting automation, this has not quite worked out with Roomba so far (Xbee mounting has still been a problem too, as there just isn't a good part of the Roomba to mount on where it stays well - sides the robot turns like crazy and might know it off, top it goes under my TV stand tho I suppose I could just put a virtual wall unit too when I finish my prototype, hopefully find single resistors to replace potentiometers using my oscilloscope, and then just "mass produce" a few with soldering iron that I could use around the house).

Thanks again. Very very helpful post. Joe too. You guys are great!

Misha

p.s. Also had an idea that since I still have two spare Xbee units (long story thought I fried them but turned out not to have) and they have PWM output, this would be another pretty convenient route for VWU, although different than this circuit which I'd like to get to work too. Just a thought that entered my head when Joe mentioned PWM.
misha680
 
Posts: 14
Joined: May 15th, 2008, 10:10 pm
Location: Houston

Eureka!

Postby misha680 » November 16th, 2008, 2:54 am

It works. Will post more later. Range seems to be 5-6 ft at least, not sure though just estimate.

So I have a 330 nF instead of C1 and 2.2 nF instead of C2. R1 is 10K potentiometer resistance reads 4.98K I will try 5 K resistor if I can find one. R2 is also 10K potentiometer resistance reads 6.07K. I also have some 100nF capacitors still and it looks like by my quick calculations I could use 100nF instead of 330nF and a 20K resistor, which I could probably find.

Is it kosher to take resistance values from a potentiometer from my multimeter and replace potentiometer with a resistor or is there something in that I am missing btw?

Thanks a lot Gordon & Joe for help! It feels great to finally see the Roomba react to the breadboard after so long working on it...

Misha
misha680
 
Posts: 14
Joined: May 15th, 2008, 10:10 pm
Location: Houston

Re: Eureka!

Postby Gordon » November 16th, 2008, 3:08 am

misha680 wrote:It works. Will post more later. Range seems to be 5-6 ft at least, ...
Nice work, Misha!
...potentiometer resistance reads 4.98K I will try 5 K resistor if I can find one.
Buying the 5k resistor will be no problem. The question is: Will its actual resistance be close enough to use. IOW, pay attention to resistance-tolerance.
...Is it kosher to take resistance values from a potentiometer from my multimeter and replace potentiometer with a resistor...
Yep, that's why you used the variable resistor(s)!
Gordon
Robot Master
 
Posts: 4304
Joined: April 6th, 2005, 2:02 am
Location: Santa Ynez, CA USA

Re: Eureka!

Postby misha680 » November 16th, 2008, 3:18 am

Gordon wrote:
misha680 wrote:It works. Will post more later. Range seems to be 5-6 ft at least, ...
Nice work, Misha!
...potentiometer resistance reads 4.98K I will try 5 K resistor if I can find one.
Buying the 5k resistor will be no problem. The question is: Will its actual resistance be close enough to use. IOW, pay attention to resistance-tolerance.
...Is it kosher to take resistance values from a potentiometer from my multimeter and replace potentiometer with a resistor...
Yep, that's why you used the variable resistor(s)!


Thanks a lot. Almost forgot I am using this LED that Joe recommended (Thanks Joe):

http://search.digikey.com/scripts/DkSea ... NA2904L-ND

It is 950 nm. I didn't try the old one first so don't know how well that would have worked.

Misha

p.s. Oh and is 5% okay for tolerance or do I need lower?

p.p.s. Also according to the comment:
http://forum.allaboutcircuits.com/showp ... ostcount=5
the CD4093 isn't supposed to be used with <10K resistors at 5V. Still not exactly sure where this comment came from, and the spec for mine does not say that (and plus the circuit works), but I'm just wondering if its valid or not I guess and why. Thanks
misha680
 
Posts: 14
Joined: May 15th, 2008, 10:10 pm
Location: Houston

Re: Eureka!

Postby Gordon » November 16th, 2008, 1:53 pm

misha680 wrote:...p.s. Oh and is 5% okay for tolerance or do I need lower?
Put on your thinking cap, Misha, you are the one in best position to determine that.

You have the physical setup to determine how far away from nominal the 38k Hz rate may drift, or be set, and still obtain a usable output from the IRCRM. Once you know the high and low limits of IRCRM operability, you can take some arbitrary, central fraction of that overall frequency span, measure variable-resistance settings which correlate with those (inside) limits, and then see whether 5% will work, or if a 1% resistor will be needed.

When you reach that point, try this resistor-calculator, since it will give you a quick way of checking what values are available in the various tolerance assignments.

You ought to find many of the other offerings at that site very useful.

A prior post indicated the 500Hz modulation rate to be less critical, hence you may avoid the parametric measurements, and go straight to the resistor calculator.
p.p.s. Also according to the comment: ...the CD4093 isn't supposed to be used with <10K resistors at 5V. Still not exactly sure where this comment came from, and the spec for mine does not say that (and plus the circuit works), but I'm just wondering if its valid or not I guess and why. ...
I don't know, maybe a CMOS-logic expert will pipe up about that. But, I see something is going sour when the timing resistor in a CMOS astable oscillator is set below 10 k-ohms. Take a look on page 227 of your copy of Don Lancaster's "CMOS Cookbook". He plots a family of curves, C_t is the parameter, in a R_t vs frequency semi-log graph. Each curve is a straight line when R_t > 10k! Below that crossover, the function is not a straight line (on a semi-log plot). You figure it out.
Gordon
Robot Master
 
Posts: 4304
Joined: April 6th, 2005, 2:02 am
Location: Santa Ynez, CA USA

Re: Eureka!

Postby misha680 » November 16th, 2008, 2:29 pm

Gordon wrote:
misha680 wrote:...p.s. Oh and is 5% okay for tolerance or do I need lower?
Put on your thinking cap, Misha, you are the one in best position to determine that.

You have the physical setup to determine how far away from nominal the 38k Hz rate may drift, or be set, and still obtain a usable output from the IRCRM. Once you know the high and low limits of IRCRM operability, you can take some arbitrary, central fraction of that overall frequency span, measure variable-resistance settings which correlate with those (inside) limits, and then see whether 5% will work, or if a 1% resistor will be needed.

When you reach that point, try this resistor-calculator, since it will give you a quick way of checking what values are available in the various tolerance assignments.

You ought to find many of the other offerings at that site very useful.

A prior post indicated the 500Hz modulation rate to be less critical, hence you may avoid the parametric measurements, and go straight to the resistor calculator.
p.p.s. Also according to the comment: ...the CD4093 isn't supposed to be used with <10K resistors at 5V. Still not exactly sure where this comment came from, and the spec for mine does not say that (and plus the circuit works), but I'm just wondering if its valid or not I guess and why. ...
I don't know, maybe a CMOS-logic expert will pipe up about that. But, I see something is going sour when the timing resistor in a CMOS astable oscillator is set below 10 k-ohms. Take a look on page 227 of your copy of Don Lancaster's "CMOS Cookbook". He plots a family of curves, C_t is the parameter, in a R_t vs frequency semi-log graph. Each curve is a straight line when R_t > 10k! Below that crossover, the function is not a straight line (on a semi-log plot). You figure it out.


Thanks that calculator link is quite handy.

You comment about the R_t <= 10K is a little worrisome for my calculations, as it means that if I replace capacitors so I can use > 10K resistors it seems I will have to find some >10K potentiometers and re-measure resistances since they won't scale using normal RC formula... bummer

... then again, guess I don't really have to replace capacitors necessarily
misha680
 
Posts: 14
Joined: May 15th, 2008, 10:10 pm
Location: Houston

Re: Eureka!

Postby Gordon » November 16th, 2008, 3:02 pm

misha680 wrote:...Thanks that calculator link is quite handy.
Welcome! I knew you'd like it.
You comment about the R_t <= 10K is a little worrisome for my calculations, as it means that if I replace capacitors so I can use > 10K resistors it seems I will have to find some >10K potentiometers and re-measure resistances since they won't scale using normal RC formula...
"re-measure", YES, "some >10K potentiometers", not necessarily! Just find some fixed resistor(s), one or more lying about on your bench, to make up the difference, and solder it/them in series with the variable resistance. E.g., say you want to shift to a fixed 47k timing resistor; just put one, or more, fixed resistors in series with the 10k trimmer. Preset the trimmer to mid-range (~5k), and with your added value(s) summing to about 40k ohms, you would have a starting resistance of ~45k ohms, and an adjustable range of about +/-12%.
--------------------------------------
Misha, a suggestion regarding forum usage: If you have no intention of writing a comment about the content of a member's reply, then try to avoid clicking the "quote" box (the one at upper right in each post). Doing that, simply uses up a lot of viewing area within a thread.

Instead of clicking that upper-right symbol, click on the "quotereply" button at lower-left, below bottom of thread's boundary. That'll put your message in the same thread w/o pulling in a lot of garbage that need not be displayed again. TIA.
Gordon
Robot Master
 
Posts: 4304
Joined: April 6th, 2005, 2:02 am
Location: Santa Ynez, CA USA

Postby misha680 » November 17th, 2008, 12:58 am

The potentiometer in series with resistor was a great suggestion thank you. I have some 10K resistors so I easily made "20K potentiometers." Unfortunately the only 1nF capacitor I have (or only one less than 2.2nF for the 38.03kHz) is +/-10% range (local source is Radio Shack unfortunately, we have one electronics store that is far away and only accessible to me on Saturdays; mostly I get things from Digikey) and the 38kHz seems to vary a lot and Roomba is not happy with it consistently (and I can tell just by measuring).

So these values below I don't think are accurate and I will get a metallized film 1nF capacitor on Digi-Key and re-calculate (I'd like to have scalable values so I can maybe vary capacitors too and get the best possible resistors):

Code: Select all
C1: 100 nF +/- 5%
R1: 17.75 kohms <== Update 18K resistor works fine

C2: 1 nF +/- 10%
R2: 14.42 kohms **

C2: 1 nF +/- 5%
R2: 14.16 kohms


I really wish Radio Shack carried better stuff. I hear they used to so I wouldn't have to order almost every single thing off DigiKey.

Misha

EDIT: Haven't gotten a chance to look at the CMOS book yet, but found another reference on the web to not using <10K at least:
http://groups.yahoo.com/group/Electroni ... sage/43847
misha680
 
Posts: 14
Joined: May 15th, 2008, 10:10 pm
Location: Houston

some bad news

Postby misha680 » November 24th, 2008, 3:00 am

So I realized that looking at VWU detection by Roomba's motion is not very straightforward, and I have a much better tool at hand - the Roomba SCI (Serial Control Interface). Now doing this I have my "VWU" perfectly tuned to 38.03 MhZ and the oscillation is 489 Hz or so per my multimeter. Yet my range is <= 1 ft with both the 880 nm and 950 nm LEDs... Any suggestions? I am tempted to go Joe's route at this point... I'm not sure what else to try with the circuit but am open to suggestions...

Misha
misha680
 
Posts: 14
Joined: May 15th, 2008, 10:10 pm
Location: Houston

Re: some bad news

Postby Gordon » November 24th, 2008, 3:31 pm

misha680 wrote:So I realized that looking at VWU detection by Roomba's motion is not very straightforward,...
Why did you not use self-test #5? Everything can be stationary.
....I have a much better tool at hand - the Roomba SCI ...
I don't recall any report about specific Remote-Control details coming through the Serial Command Interface, what, exactly do you read from that source? How do the data differ from that obtained via Test-5?
...I have my "VWU" perfectly tuned to 38.03 MhZ and...
Of course you mean 38kHz (I can't imagine why you latched onto that "38.03" value, since it was a single measurement on a single VWU, at one point in time! 38kHz is the nominal frequency to build to.)
If I had typed that value into a post, rather than showing it in an image, I would have rounded the number to "38".
Yet my range is <= 1 ft with both the 880 nm and 950 nm LEDs...
If I were fooling with that system, I'd like to know the peak-current flowing through the IRED. That measurement requires an oscillscope with differential inputs, or two channels should work in this case.
Gordon
Robot Master
 
Posts: 4304
Joined: April 6th, 2005, 2:02 am
Location: Santa Ynez, CA USA

Postby misha680 » November 24th, 2008, 11:47 pm

Ok sorry false alarm I just figured out my initial testing was not very good. However, having a good assay (it is part of the Roomba SCI sensor packet page 7 of the spec I did not know about test-4 previously btw but I did test the sensor packet with a real VWU as well) is key. I went back to test again today a little more thoroughly and yesterday was clearly not my best day. In any case, I did not realize how directional and narrow the IR band of the LED is, and if I point it exactly at the IR sensor on the Roomba I can definitely get > 1 foot and probably at least 3 at this point at which point it gets hard for me to keep the breadboard oriented properly. I will work on it to see if I can get an accurate range.

So it is working. And yes 38 MHz is the value, I had just been going with 38.03 because this was the value from a real VWU, but you are right it is one measurement from one VWU and also I am not sure how accurate it would be (to that many decimal places).

In any case I will attempt some further investigations to get an accurate range. Sorry about the false alarm. It is in fact working, just a very narrow LED beam from the IR LED obviously (I'm still very new at all this as you can tell).

Thank you for your thoughts
Misha
misha680
 
Posts: 14
Joined: May 15th, 2008, 10:10 pm
Location: Houston

Re: DIY Virtual Walls??

Postby misha680 » December 1st, 2008, 9:56 am

Btw I tried 14 kDa +/- 1% resistor for 38 MHz signal and get about 3 ft range (this is about what I get with the potentiometer tuned too). Joe had told me:
The range simply depended on the size of the resistor I was using in front of the LED. When I put a 20ohm resistor, I get a good 6 to 8 feet. With 100ohm I was getting about 4 feet reliably.

Would ppl try a different resistor in our setup as well in front of LED (right now I believe it is 22ohm, maybe 18, I could try less)? I may try PICKit too just to see how different it is with a more fixed frequency still (there's still some fluctuation in circuit b/c of +/- 5% error in capacitors I guess)? Any advantage to having a shorter range?

Thanks
Misha
misha680
 
Posts: 14
Joined: May 15th, 2008, 10:10 pm
Location: Houston

PreviousNext

Return to Robotic Hacking

Who is online

Users browsing this forum: No registered users and 270 guests