Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Dyne's LD-F1 (D-O concept) build
#41
Liftoff?  Well...

The build has continued into my rest week, as I suspected it might.  I've been focused on getting as much done before Dragon Con as I can, which is why I didn't update last Monday.  I'm a lot further along now than I was then, and we depart for the con in a few days, so I am going to take this opportunity to catch the thread up on where I am.


I have done a lot of painting over the last week and change, on both this droid and my 99-99 build, so that aspect is a lot further than I thought I'd get.  I was strongly suspecting that the droid would be half primer, half unpainted plastic.  Instead, we get something more like this.
[Image: 20220819_125828-smaller.jpg]

These are the colors I'm using:
[Image: 20220821_125718-smaller.jpg]

There's some body work I'm not going to get time to improve (especially the recessed area in the front shell).  No weathering for now either, but it's looking better.


I haven't quite gotten the droid up and running.  I'm getting pretty close, but there were some issues with arranging the electronics I've had to sort out ... especially mounting the ESP32.  There are a lot of thick 10 gauge wires that are attached in the small area under the switch, as well as the front axle, the ground terminal bar, etc.  I was planning to mount the microcontroller in the opening to that area, but not only can I not do that because the wires have to come through there, I can't put the ESCs or receiver under there either (which is a problem, because that means I can't put the cover on and electronics are left dangling out).

This is a photo of one of the first power tests:
[Image: 20220820-power-test-smaller.jpg]

Basically just the battery, switch, and voltmeter were connected there.  The fuse panel is the common positive point, while a terminal bar attached to the front of the electronics box serves as the common ground.  The ESCs (which are deliberately overrated) run off of the battery voltage via 20 amp fuses. and one of them supplies power to the R/C receiver via its UBEC output.
[Image: 20220824_115358-smaller.jpg]


As of Wednesday, the front and rear axles and sprockets were added, along with the rear body shell.  Getting the intermediate pulley in place and the front axle, sprockets, and belts on properly was a bit of a pain, but I got it done.  Everything in the lower body was soon wired, and Wednesday morning I did a smoke test and motor run test under R/C control (using a 2S LIPO rather than the normal 3S, just in case there was a catastrophic short or something).

I went to drape the righthand track on the sprockets ... and somehow I seemed to have an off-by-one error.  See, I'm supposed to have 53 links per track.  6 TPU, and then 5 sections of 8 PETG (total 40), and a final section of 7 PETG.  6 + 47 = 53.  That's what was on the track, that's what's in the model, ... and yet it appeared to be one link short.
[Image: 20220824_143730-smaller.jpg]

The reason is because the sprocket on the left of that photo had it's toothed wheels slightly out of alignment with each other. I fixed that (and replaced all the M3 screws on the outer wheels with longer versions, after I found one had come loose).

That left the head and stalks.  Not long after my last post, I mounted the head on the neck to test the servo settings that I showed in my last reply, but that was before stuff got fully painted, so I had to take it back apart for that.  As I suspected that I might, I ended up reconfiguring the mix on the radio to change the movement speed of the servos properly.  This is the new Input screen:
[Image: 20220824-new-mix-01.png]

And the mixer screen:
[Image: 20220824-new-mix-02.png]

The lines for I1 and I3 on the input screen are simplified because the change meant the speed alterations were moved to the Mixes page.  The lines for Channel 3 and Channel 4 are the relevant ones in the Mixes.

Because you can't scale the servo speeds in the same way that you can scale the position, I had to get a bit tricky.  Note that each pair of I1 and I3 lines on those channels has a unique combination of GV# and values in the parentheses after "Slow".  GV# is the # of some particular Global Variable I'm using (#1, 2, or 3).  The U and D values determine how long (in seconds) it takes for the value for that line to reach its new position when moving Up or Down.

Among other things (like playing alarms when I put the switches into high speed mode), on the Special Functions page I have a series of lines that set those variables depending on the 3-way switch's position ... one variable of the three gets set to 100, the other two get set to 0:
[Image: 20220824-new-mix-03.png]

Because one (and only one) variable is 100 at any given time, the lines on the Mixer page that use that variable are the lines that will actually affect the servo's position.  The other lines get zeroed out.


While I'm on the topic of the radio, I added a phone mount to mine for the purposes of controlling the Human-Cyborg Relations app less awkwardly.  And possibly also filming the droid while driving.  Ignore the giant threaded rod; this was taken before I cut one down.
[Image: 20220818_142729-smaller.jpg]


I said over in 99-99's thread that I clear coated the lenses.  This is LD-F1's lens:
[Image: 20220822_143522-smaller.jpg]


(to be continued due to the forum's image limit)
Reply
#42
(We now resume our previous post, already in progress...)


Electronics in the head are also largely finished.

To solve my issues with the wires in the lower body, the ESP32 has been moved to the head.  This means that, for now, the only wires running between the head and body are the three signal wires for the head servos from the R/C receiver, and the two power wires from the buck converter.  I made a little U shaped board that holds both the microcontroller and the logic level converter so that the pins are accessible.  There are no mounts for this board in the head; it's just going to get glued in for now, in roughly this orientation.  That's a dumb way to do it, but it's what we've got.
[Image: 20220827_134627-smaller.jpg]


The PCA9685 (which currently just takes the power from the buck converter and supplies it to the LEDs, ESP32, logic converter, and servos) has been mounted in the head.  All of the LEDs are also in place and wired.  This shows a test of those:
[Image: 20220821_044738-smaller.jpg]

You can't tell from that photo, but for reasons I haven't quite figured out, the neopixel sticks were glitchy as heck (spurious colors and updating the wrong pixels).  They work well enough that you could probably read it as intentional, so I can live with it for now.  I thought the issue was the need for a logic level converter, but adding one doesn't help at all.  The glitches don't happen in the Adafruit strandtest sketch, nor in the boot (setup function) portion of my sketch, but only start to happen in the loop function of the sketch that I wrote.

As far as I can tell, the major difference between the stuff that works and the stuff that doesn't is that the former relies on delay() and the latter is using typical arduino style millis() task scheduling.  Maybe millis() is a bad way to do things on an ESP32?  That seems odd.

As for powering the stuff in the head, this buck converter is mounted to the track idler brackets and has already been calibrated to put out 5 volts.  I had to drill holes in the rear outer side plate for the input wires because there I neglected to put a hole in before printing it (and I ended up drilling three more useless holes for the output wires before I gave up and routed those through the gap between the front and rear half of the body.
[Image: 20220826_134530-smaller.jpg]


After doing all that, I made a big booboo and damaged one of my neopixels (the standalone "PSI" LED).  See, the PCA9685 servo board has six pins for dupont/JST connectors, as well as a pair of screw terminals.  Power supply for the devices that the board runs can be connected either way.  

I really really REALLY hate screw terminals.  I hate the ones on the buck converter, and I hate the ones on the servo board.  Nevertheless, I gave using them my best shot and it was just not working.  So I switched the power wires to use the six pin JST input and hooked everything up to test it.  Before turning it on, I realized the logic level converter was wired completely wrong, and fixed that.

And wouldn't you know it, in spite of very deliberately making a mental note of which way around the connector for the power wires to the head was supposed to go, I STILL managed to put it on backwards.  And the board only has polarity protection on the screw terminals, NOT the pins (kind of a dumb omission if you ask me).

The result of the polarity reversal (once I fixed it) was that all of the LEDs after the first stick in the chain (the horizontal strip) were now EXTREMELY flaky ... completely the wrong colors, with the vertical strip being mostly white and brighter than normal.  Miraculously, neither the ESP32 nor the first stick in the chain (the horizontal bar) seem to be affected at all.

On a hunch, I removed the first LED showing issues -- the standalone "PSI" LED -- from the strand, reattached the vertical strip, and altered my code to account for the missing PSI absence.  Now all of the neopixels are happily back to their normal level of glitchyness.  Eh, good enough.


With the buck converter wiring complete, I was also able to add the second track yesterday and FINALLY do some actual test driving (sans head).  It turns out that the droid is happy to run on a 2S LIPO, and I'm pretty sure that I will not at any point need high speed mode with the 3S.  Even at a middling 11.3 volts, it's ridiculously fast.

Based on my limited testing, it is capable of driving and turning on smooth floor, concrete, and carpet without much trouble.  It will eat throw rugs, however, and that might explain why one of my belts came off the pulley afterward.

This is more or less what LD-F1 looks like now.  You will notice the speed controllers and such dangling out in front (I mentioned before that I couldn't put them where intended).  Without the cover, the neck joint doesn't sit where it should, causing the neck to tilt backwards a bit, unintentionally matching the artwork after all.
[Image: 20220826_153056-smaller.jpg]

I've wired up the head electronics, attached the cables, and just need to glue my ESP32 mount in place and secure and connect everything when I attach the head.

I'll post more pics and videos once I get everything put together, if I have time.
Reply
#43
Cool, looking good..... Impressed with how it's all (mostly) coming together.


I was updating some logs the other day and noticed how it seemed like all my droids achieved their major milestones "the night before" the big events.
Reply
#44
(08-27-2022, 10:50 AM)kresty Wrote: Cool, looking good..... Impressed with how it's all (mostly) coming together.


Thanks.  I put the head on, so here's how he's looking now.

[Image: 20220827_155709-smaller.jpg]

Quote:I was updating some logs the other day and noticed how it seemed like all my droids achieved their major milestones "the night before" the big events.

Yeah, pretty much.  And then things break so you end up also working on it AT the big event.  And probably afterward, too.
Reply
#45
(08-27-2022, 12:47 PM)Dyne Wrote:
Quote:I was updating some logs the other day and noticed how it seemed like all my droids achieved their major milestones "the night before" the big events.

Yeah, pretty much.  And then things break so you end up also working on it AT the big event.  And probably afterward, too.

Oh, yea, well, for ECCC last week L3-G0 wasn't running for the 1st two days really.  We got one of the others finally running well - and then Lara killed it somehow, so he failed the last day.  Another limped along fairly well with a hacked wheel.  Mouse didn't really have issues at least!

They were at least running enough to get all four moving video, but I missed the chance to get a better video the next day since the one died.
Reply
#46
(08-27-2022, 03:57 PM)kresty Wrote: Oh, yea, well, for ECCC last week L3-G0 wasn't running for the 1st two days really.  We got one of the others finally running well - and then Lara killed it somehow, so he failed the last day.  Another limped along fairly well with a hacked wheel.  Mouse didn't really have issues at least!

They were at least running enough to get all four moving video, but I missed the chance to get a better video the next day since the one died.

Oh dear, sorry to hear that.

Yeah, I'm no stranger to breakdowns. Artie Deco's first motorized appearance at Dragon Con 2018 resulted in one of his drive gears slipping on its shaft. It cost a few days of the convention to finally fix that. Then in 2019 he stopped working entirely due to some swapped wires. He worked fine in 2021 but then he took a three+ foot tumble out of the back of the van onto a concrete carport on the way back from the con. No obvious damage, but at a con the following week, one of his motors started failing intermittently partway through.

BB-5M worked decently enough ... when his head would stay on for more than five minutes. The constant falls resulted in some internal damage to the dome attachments and a busted holo. P-1P (my mini MSE-4) runs for about two minutes on the marriott carpet before getting bogged down

So far my best performing build was my Nautealus teapot racer from 2017 which became my Ghostbusters RTV in 2021. But that was mostly just replacing the body.

It's just a thing we have to accept sometimes I suppose. I have high hopes that LD-F1 will be my most reliable yet, but I already recognize not everything turned out as well as I'd hoped.

The neck feels potentially fragile (Im not sure it'd survive being pushed too far the wrong way), it doesnt have powered lift, and it has a bit too much side-to-side play due to difficulty placing the spacers. The upper idler axles are slightly too short for locknuts. There are the design flaws with the pulley axle mounts, and the belts can and will skip or derail in spite of the tension on then. Its possible the amount of tension on the tracks will result in a break at some point. Just today, I picked up the droid and accidentally caught a few traction pads on my foot, which pulled them off and broke a couple of their clips (I have spares).

There is also the obvious issue with ESCs sticking out. For that, at least, I have a plan for improvement, but with two days before departure, I dont really have time to implement the changes right now. It would require ripping the fuse box and associated wiring out and replacing it with individual fuses, leaving more room for other stuff. (I didn't do this sooner because the original wiring plan would have needed more fuses, so it wouldn't have been of any benefit.) I'll address that after the con.

So it goes.


Sent from my SM-A326U1 using Tapatalk
Reply
#47
I'm still at Dragon Con, so this is just a quick update. Photos will have to wait.

LD-F1 has been running every day.

Thursday was the roughest. I managed to drive out of the room, down to the Atrium Level, and over to the droid area (which took all of five minutes) before his belts started slipping. It took awhile for the pads to wear off enough rough edges to be able to turn reliably on the droid dome's carpet.

That issue wasn't nearly as bad as when he later made a trip to the food court and I made extensive use of that high speed mode I didnt think I'd need.

Remember (in post #41) when I said I discovered that one of the outer toothed wheels had come off when I installed the second track, so I replaced all the outer M3 screws with longer ones?

I didn't replace the inner screws after that because I couldn't access them without taking the track and sprocketsback off. Putting the tracks on single-handedly was enough of a pain that I was willing to not bother unless it actually came up, hopefully at a point when I was more likely to have assistance.

It came up during that trip to the food court.

The belt started skipping badly, and one track eventually stopped turning. I checked it and I thought it was a loose pulley, but (once the track was off) it turned out that the front starboard inner wheel came free. Since the toothed wheels also keep the bearings on the sprocket, and therefore keep everything centered on the axle, so the whole sprocket goes off kilter when this happens.

The inner belt on the port side also came off during the trip (or during my attempts to get it driving). Getting to that belt back on also required removing the other track, so I replaced the screws on all four sprockets while I could get to them.

Once I had both tracks off, I discovered the port belt had not only sheared the inner flange off of the intermediate pulley (not too surprising, as it's thin in that area) but also chainsawed its way into the pulley's mounting post on the front outer side plate. Without a spare plate, my only option was to replace the pulley with my only (PLA) spare and cross my fingers.


On Friday, the droid was driving much better, even on the carpet. The only time he had trouble was during our droid parade through the Atrium. He got halfway around the first leg before the constant starting and stopping to navigate the crowd caused one of the outer belts to come off. That's a relatively trivial fix, and he managed to drive the rest of the night with only minor belt skipping when I went too fast.

His starboard head servo horn also started coming off. I can temporarily press fit it back on temporarily, but don't have the tiny tiny allen key that's needed to tighten it with me.

Finally, the microcontroller started periodically rebooting (especially when tilting full forward), which only affects the face LEDs ... you can tell because they all go yellow then return to blue. I suspect a loose wire or the foam behind the ESP32 hitting the button. Not a big deal.


Things went even more smoothly Saturday, with only the minor recurring issues from the day before. He played to the crowd and interacted with the other droids a lot. He even gained his own (toy) insect companion and pretended to be a mini WALL-E for awhile.

I've often found younger kids gravitate toward the smaller robots (probably because they are less intimidating), and adults because they seem cuter. This one has not been an exception.


Given how things have gone once we got through the first day, I'm pretty pleased. There are definite areas for improvement, but for awhile there I feared the drive would destroy itself.

We'll see how the rest of the con goes.

Edit: The droid ran until just before the droid builder's panel Sunday night, at which point the starboard inner belt broke, and since the only one I had left was the deformed version from the food court aftermath, that put a stop to my driving activities (at least in any direction other than straight forward and back and sometimes random right turns). I'm still quite pleased with his performance.
Reply
#48
Now that I'm back from Dragon Con and things are starting to return to what passes for normal, I thought I'd post an update.  I've already described much of his performance at the con, so I won't rehash that, but I will post some media, and also go over the improvements I know I need to make.

You may recall LD-F1's speed controllers were dangling out of the body.  I didn't have time to fix that, but we did redecorate them a bit before the convention...
[Image: 20220912_162301-cropped.jpg]


This was the gang once we arrived at the hotel on Thursday.  Chewchilla the Wookiee Monster (who is meant to go with Artie Deco, but I didn't have him this year), Babu Frik, LD-F1, and 99-99:
[Image: 20220901_150949-smaller.jpg]


I drove him around the droid dome quite a bit.  Here's a little video of LD-F1 practicing his head tilts.





And a still image:
[Image: IMG_20220904_114650-cropped.jpg]


The silver pulley on the left is the one that was broken when the inner belt came off, shown next to the intact spare.  I'm more surprised that this didn't happen multiple times:
[Image: 20220901_224045-smaller.jpg]


And this is the damage that was done to the mounting post in that incident, with the belt chainsawing its way into the plastic:
[Image: 20220901_223934-smaller.jpg]


Spare belt and pulley installed.  This fix lasted the rest of the convention:
[Image: 20220901_225349-smaller.jpg]


The belt on the other side, however, did not.  This is the one that broke right before the droid builder's panel. Since I'd already used the spare belt, I had no way to fix this and mostly just moved him around by hand or let him sit in place and animated his head:
[Image: 20220904_224454-smaller.jpg]


Group photo of the droids after the panel:
[Image: 20220904_221027-smaller.jpg]



I used the Bluetooth speaker running audio from the Human-Cyborg Relations' Astromech app on my spare phone, but only occasionally during the day when there were periods where it was quiet enough to hear the speaker.  In the evenings, the con was far too noisy to hear it even at full volume, unless you got right next to it.


As for improvements:

* LD-F1's head needs the front orange stripe painted on and just general weathering all over the droid.

* I only need three fuses, so I'm going to be taking the 6 position fuse panel out and rewiring in favor of individual blade fuse holders, as the space will be needed for putting those ESCs under the electronics cover properly.   I will probably make more use of Wago connectors

* I also need to find a home for the R/C receiver.

* Head internal wiring needs to be neatened.  I suspect it was sometimes catching on the mechanism.  Didn't have time or energy to deal with that before or during the con.

* The ESP32 rebooting issue needs to be investigated.  You can tell this is happening because his neopixels go yellow, then slowly fill with blue (the startup sequence).  Also, occasionally, I will switch on the power and the neopixels do not come on at all.  Unsure what's going on there.

* Belt tension needs to be improved.

* Need to tighten the starboard head tilt servo horn.

* I always intended that the wiring running up to his head should be in a wire loom of some sort, I just needed something more like 1/2" rather than the 3/8" and larger that I had available.  In the mean time, the current setup works.

* I'm probably going to shorten his antenna a little.

* I'll be printing the side plates for his tracks soon hopefully.

* I want to tighten up the neck mechanism so it has less play, side-to-side.

* His head rotation also keeps losing its centering, so he can often turn his head further one way than the other.  I'll probably need to tighten up the yaw servo mount.


All in all, it was a pretty good convention in spite of the malfunctions.  LD-F1 appears to be pretty popular, with several people saying they loved it (including, reportedly, Michael McMaster).  Kids at the convention also liked to crowd around him, and one little girl even gave him a flower.
Reply
#49
Wow, looks great.

Droids always have a to do list
Reply
#50
I've been working on the design for the side plates and their mounts.
[Image: 20221003-track-01.jpg]


Due to the length of the tracks, the side plates will not fit as a single piece on my 400x400 build plate, not even diagonally, so I have elected to split them in half and join them together with two screws on each side.  You can see the two holes here:
[Image: 20221003-track-02.jpg]



The colorful part shown here is the mount for the side plates.  It attaches to the outer part of the idler carrier.  
[Image: 20221003-track-03.jpg]


You may recall seeing the M5 brass inserts just below the Voltage regulator (third pic of post #42) ... the red holes here are for the bolts that go in those inserts.

The white block prong shapes are basically just for keeping alignment with the ribs on the back surface of the side plates (otherwise they could just slide around on the magnets).  I'm likely going to thicken them and possibly add more.  The green surfaces are for 20 mm ring magnets with countersunk holes.  (I still have to add the bits that the magnets latch onto.)


Here is an image of the back of the side plates.
[Image: 20221003-track-04.jpg]

The centers of the rounded ends have to be open to accommodate the lock nuts and the ends of the front and rear axles (which I'll probably have to trim closer to the lock nuts).


Also, painted the front stripe that I'd run out of time for, and added a little metal color as prep for full weathering. And I found the top door (I'd mislaid it when packing for Dragon Con). It's not really attached here, just sitting in the opening.
[Image: 20221003_180429-smaller.jpg]
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)