General > General Technical Chat
connecting Lego dacta 9751(Interface B control lab) to Whadda/OWI robot arm?
(1/3) > >>
htm:
Hi
i have this 9751 LEGO Technic Interface B controller. It's for the older 9V Lego-Technic parts.
On the right side of its connector panel, there are 8 PWM outputs which can switch polarity and has 7 PWM levels.
The controller is programmable using a rs232 interface. The original software runs on Windows95, but luckily people made a Python and a Java API.

I want to see if i can use it to drive the 'whadda' robotarm kit. This robot kit powers the motors with 3 volts. each motor has a ceramic capacitor in parallel which says '104'.

I hope this is the right place in the EEVBLOG to post things about my ongoing project..


i have a program cycling from
1 - left, going from pwm level 0 to 7 with 1 second interval
2 - right, going from pwm level 0 to 7 with 1 second interval

When i use the dacta controller to drive the standard 9V DC Lego motors(pics of its internals), then the voltage on the oscilloscope roughly follows the PWM modulation.(looks the line follows the initial on-spike to 9v and then comes down a bit and stays there until the pulse goes off)
But when i attach one of  the DC motors of the robotarm then the signal on the oscilloscope goes to about zero with spikes looking like depending on the pwm signal.  (i've got an Gould OS250TV 10 mhz oscilloscope)

i thought, the voltage drawn to 0-ish looks like a short cicruit, so
i put a 100 ohm resistor in series between the dacta-motor-connector and the 'whadda' motor, but then the motor doesn't turn.
when i put a 10 ohm resistor in place, it starts working at pwm levels 6(90%) and 7(full on)

To reduce the spikes, i had tried to a few capacitors Variations in parallel(even though it already has one). the ceramic ones(100u to 1uF) didn't seem to do much.
when i put an electrolytic 50V/820uF in parallel(hoping it wouldn't blow up when in reverse ???, which it didn't) it does soften the whole PWM out to a smooth-ish line, so smooth that i don't see the pwm pulses, it's now jagged line. But it does seem to make the motor turn a bit better (at pwm levels 5 to 7).

But still not really good. And the motor isn't responding evenly for left and right turning at same pwm level. when testing i don't have the motor connected and tried making contact when at different levels. When keeping it connected, the motor makes a high-pitch sound, but only starts moving late in level 7. when i connect at level 6 or 7 only, it starts turning almost immediately. i guess it's the big capacitor first taking the energy.

i've checked some information on back-emf, but i'm not sure what to try next.

Looking at the 9V Lego motor pictures, i see things which i don't recognize.
on the 2nd picture it looks like there's some sort of diode inside.
on the 1st picture and 3rd picture it looks like there's some sort of cell inside.
i'm hoping you can tell me what i'm looking at, and how i can get the robot arm motors properly responding

Thx
Cyberdragon:
I have the earlier model of this arm, and assuming it's the same internals, it should just be driving the motors by simple switches and polarity reversal, I see no reason why an H-bridge would not work.

If you have to put a resistor in series, seems like the motors are just too high power in the arm (IDK what the specs are, what batteries does it take? my older one takes Ds which put out a lot more than Lego motors use). Also...that's a 9V max output on a 3V motor, if that were to reach full power it would certainly not be healthy for the motor.

Also, don't reverse caps, even if they don't pop immediately it is damaging them if the pulses are high enough.

The Lego motor probably just has a thermal cutout.

htm:
Hi Cyberdragon,


--- Quote from: Cyberdragon on July 16, 2021, 06:21:40 am ---I have the earlier model of this arm, and assuming it's the same internals, it should just be driving the motors by simple switches and polarity reversal, I see no reason why an H-bridge would not work.
--- End quote ---
i actually just pulled a picture from the internet. im not sure which model it is. This type also uses D type batteries. i got it for 5 euro from an online 2nd hand store :) The seller told me he got it from www.conrad.com


--- Quote from: Cyberdragon on July 16, 2021, 06:21:40 am ---If you have to put a resistor in series, seems like the motors are just too high power in the arm (IDK what the specs are, what batteries does it take? my older one takes Ds which put out a lot more than Lego motors use). Also...that's a 9V max output on a 3V motor, if that were to reach full power it would certainly not be healthy for the motor.
--- End quote ---
yes, 9V out on 3V motor.. not sure what can be done about it other than replacing the motor?

Thanks for warning of the invisible Elco damage.


--- Quote from: Cyberdragon on July 16, 2021, 06:21:40 am ---The Lego motor probably just has a thermal cutout.
--- End quote ---
would that be the diode-like thing i guess. any idea what the disc could be?
htm:
(9751 Dacta controller)
Sadly i don't have any details on the DACTA controller PWM output

(2838c01 Lego Motor)
I took one 9V Lego motor apart to see it's components.
photo1 - top view
photo2 - rear view
photo3 - rear view, with the disc in place
photo4 - shows a black cylinder with part number "15B C451"

Based on the partnumber i found printed on the outside of the Lego motor '70586', i found this stackExchange article
https://bricks.stackexchange.com/questions/6507/can-i-safely-dissassemble-a-74569-motor-the-old-fast-9v-one
is contains some nice details:

* The motor itself is a mabuchi 70586,
* The shiny disk is a resettable thermal fuse aimed at limiting current in the motor if it is stalled for a long time.
* The black cylinder is a 15V surge suppressor, limiting voltage spikes caused by motor brushes(on mine it says "15B C451")(Whadda robotarm motor)
Here are the robotarm 3V motor specifications https://owirobot.com/robotic-arm-edge/
Operating Voltage3VDCNo Load Current255mA Max.Stall Current3170mA
The whadda/owi robot does 'motor stall protection' by slipping, in case the robot arm can't move. So that would iliminate my need for a thermal fuse, i guess.
But a surge suppressor like the Lego motor has, sounds like something useful.
Q1:
Would a bidirectional TVS diode as 'surge suppressor', with Vr=9.4V and Vc=15.6V, (i looked it up here) be sufficient when i use the 3V robot motor?

Q2:
Is there a do-able way to adjust the Dacta reversible 9V PWM signal to fit a 3V motor? Or would it be better to select another motor to use in the robot?
(so that i can keep using the Lego dacta controller)
htm:
I did a few tests on a Dacta Interface B output port, to see what it could drive.

I set its PWM to 100% and measured the voltage drop for the following resistances;

Notes;
At 47Ω, the voltage shows a steady line on the oscilloscope.
At 22Ω, approx 7V on the scope, i noticed a downward wobble.  --‿--‿-- of about 1Volt
At 10Ω, approx 5V on the scope, i noticed a full wobble.  ⁔‿⁔‿ of about 1 Volt up and 1Volt down

Looks like the DACTA interface is built for delivering about 150mA maximum per PWM output port.
Is that a fair conclusion?
Navigation
Message Index
Next page
There was an error while thanking
Thanking...

Go to full version
Powered by SMFPacks Advanced Attachments Uploader Mod