The following warnings occurred:
Warning [2] Creating default object from empty value - Line: 11 - File: inc/plugins/tapatalk.php PHP 7.4.10 (Linux)
File Line Function
/inc/plugins/tapatalk.php 11 errorHandler->error
/inc/class_plugins.php 38 require_once
/inc/init.php 233 pluginSystem->load
/global.php 18 require_once
/showthread.php 28 require_once





Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Dyne's LD-F1 (D-O concept) build
#31
Yikes, 45 min * 106 pads is a long time.
Reply
#32
(08-01-2022, 09:13 PM)kresty Wrote: Yikes, 45 min * 106 pads is a long time.

True, but the track links took even longer individually.

Edit: Also, I made quicker progress than I expected on the idler mount structure and figuring out how to attach it to the droid.  If I can keep this pace up, I'll have all of the remaining parts for the droid's lower section ready for printing before this weekend.

[Image: 20220731-idler-mounts.png]


I'm currently printing the front body shell, having added the remaining support that I mentioned last post.

[Image: 20220801-front-body-shell.jpg]
Reply
#33
I'm glad Kresty chimed in. My mechanical engineer son in law and I started to discuss the issue so we could compose some sort of a helpful response and ended up being unable to arrive at a consensus between the two of us as to what to reply. The conversation continues to be ongoing and of no assistance to anyone.

I apologize for repeating myself, but; Awesome work!
Reply
#34
(08-01-2022, 09:13 PM)kresty Wrote: Yikes, 45 min * 106 pads is a long time.

Under 5 days.  That's not *too* bad, really, if his time-line weren't so tight.

I've printed helmets that have taken that long.
Reply
#35
(08-02-2022, 02:26 PM)savagecreature Wrote: I'm glad Kresty chimed in. My mechanical engineer son in law and I started to discuss the issue so we could compose some sort of a helpful response and ended up being unable to arrive at a consensus between the two of us as to what to reply. The conversation continues to be ongoing and of no assistance to anyone.

I apologize for repeating myself, but; Awesome work!

Thanks!

If you couldn't come to a consensus, I feel much better about scratching my head over it.

It's a moot point anyway until I figure out how I can even fit a servo. For awhile I told myself that if I needed a stronger (and likely larger) actuator, I could mount it along the bottom of the droid to pull or push directly on the stalks instead of on the bottom of the body. That now suffers the same problem of needing to be where the battery is.

Switching from the belt to the track drive is what messed me up there, I think. I suddenly needed the idlers and associated structure instead of a simple roller (to flatten the track out before it contacted the ground) so I didn't have as much room to mount random things tucked inside the tracks, outboard from the central body, and instead had to put them where I was wanting to put the battery.

I'll probably have to wire up my own cells to relocate it, or do something like a crazy reduction compact planetary gearbox ala michael rechtin, mounted inline with the stalk axle. Something to consider for V2.


As for the traction pads, we can potentially engage multiple printers. Besides my Chiron, I have access to my friend's Neptune 2 and my old Maker Select which I gave him before he got the Neptune 2. (The Maker Select is unreliable and awaiting rebuild, but it is technically working.)

It'd also mean that the rigid pads might end up printed in different colored filaments since the new spool of silver PETG can only be in one place at a time (i have a small amount on the original good spool, but it wouldnt last long. I have the remainder of the bad spool as well, but we're obviously would be wary of that one)


Front body shell came out fine. I'll probably print the rear shell tonight since I already have the white filament loaded.

Sent from my SM-A326U1 using Tapatalk
Reply
#36
T-Minus 2 weeks (Yikes)

Between last Monday's countdown post and last Thursday, I ...
  • Printed the front body shell of the droid, as previously mentioned
  • Did a lot of chassis design
  • Finished adding the various pivot points to the rear body shell
  • Changed the electronics arrangement
  • Printed replacements for the red 42T and 60T HTD belts that I'd previously been using.  The new ones are 40T and 58T respectively.  This is to help with tensioning, as the old ones were a little too loose.  They seem like they'll work, but I also printed 41T and 59T belts in case I need a size in between.  I really should design motor sprockets and intermediate sprockets with more teeth so they mesh with the belts better (10 is a bit too few), but that'd alter the gear ratio of the drive.
  • Printed 12 TPU traction pads
  • Printed 11 of 94 PETG traction pads

When deciding how many TPU pads to print, I also had to decide how to arrange them.  My tracks have 53 links each, each link with room for a single traction pad to be attached.  Making the tracks somewhat consistent in both the amount of friction and in the appearance would be ideal, so I wanted to work it out so the TPU traction pads are relatively evenly spaced. The extra friction of a single TPU pad compared to PETG isn't HUGE, but it is noticeable.  They also differ in color from the more metallic PETG pads (Silver PETG), though oddly they are a very close match to the color of the track links (Silver PLA).  

Unfortunately, 53 is a prime number, so the only factors are 1 and 53.  I'll have to settle for a varying pattern.

For example, I could start off treating each track as having 52 links to get better factors to split the track up into segments with, and then put the single leftover link somewhere in one of them.  The factors of 52 are 1, 2, 4, 13, 26, and 52.  I'll ignore the option of 1 or 2 (too few TPU pads), and 13, 26 or 52 (more than I want).  If I went with 4 pads per track, they could be spaced as follows (each "1" being a TPU pad, and the other numbers being PETG): 1, 12, 1, 12, 1, 12, 1, 13.

By coincidence, the contact surface of the track is more or less 13 pads long.  That means the above pattern would have a point in every rotation where there are briefly zero TPU pads on the ground.  This could lead to inconsistent traction.  Since that 13 link gap wouldn't line up between the left and right tracks for very long, it could also cause the droid's direction to vary when trying to go in a straight line.  I don't expect it'd be a major problem, but I'd just as soon avoid it entirely.

Which is why I chose to use 6 TPU pads on each track.  That allows me to separate each by only 8 PETG pads, except for the last group, which is only separated by 7.  (Six sections of 8 PETG = 48, plus six TPU pads at the start of each segment = 54.  That's one too many links, so remove one PETG.)  There will still be occasions when only one TPU pad is on the ground and other occasions where two are, but that's less problematic than none at all.

With 12 out of 106 pads printed in TPU, I only needed 94 more in PETG.  I previously said that they took 45 minutes, but I tweaked the profile a bit and got it down to 39.

If I printed them one-by-one, that would work out to 94 * 39 / 60 = 61.1 hours of print time, or roughly 61.1 / 24 = 2.54 days of nonstop printing, not counting setup time.  However, printing ten of them would only take 6.25 hours, which in the long run saves 2.35 hours of raw print time (94 / 10 * 6.25 = 58.75) and potentially a lot of setup time as well.  It would also give the little pronged clips on the pads more time to cool.  In any case, as mentioned earlier, I'd printed 11 of them by Thursday.


Then on Friday, I made another executive decision:  Faced with the prospect of 83 more traction pads, and seven chassis parts that individually would take a significant portion of a day to print, I went ahead and swapped nozzles to 0.6 mm.  I'm glad that I did, because that cut my print times nearly in half. Since then I've managed to print:
  • The remaining two sprocket wheels
  • The rear body shell
  • The electronics box
  • The electronics box lid
  • Both rear inner side plates
  • Both rear outer side plates
  • 15 more traction pads
  • 6 of the idlers

Most of the larger pieces were finished by Saturday afternoon.  And here is a dry fit of the chassis with the parts I've got so far:

[Image: 20220806_174501-smaller.jpg]

[Image: 20220806_175056-smaller.jpg]


With the new nozzle, the individual traction pad print time has also been reduced to 22 minutes, cutting the max print time for the 68 that I still haven't printed down to 25 hours ... less if they are done in groups.  I can likely knock those out here and there this week.

(I would have had ten more traction pads already, but I encountered one of the evils of cardboard spools.  Apparently a piece of the inner cardboard on my silver spool lifted up, and then the filament got caught behind it as it turned.  That prevented the spool from turning further, and so the printer stopped extruding plastic right before the main body of the pad itself finished.)


That leaves only the idler mounts, the side plates, and the rest of the head as major prints.  I am printing the left-hand idler mounts right now and the right hand will soon follow.

[Image: 20220808-idler-mounts.png]

The front-most idler (on the right) is missing because that one is different and I still need to model it.  I need it to have a smaller diameter so there's more space between it and the intermediate drive pulley.  Speaking of which, you may notice that the outboard idler mount has a little arm passing behind the yellow pulley. That has a matching slot for the axle for said pulley to help keep it straight.  Which I just now realized will only really work in one specific position (the one that I modeled the droid in) because the pulley moves with the front section of the droid, and the idlers are attached to the rear section, and these can slide in relation to each other.  I knew that before now; what I just realized is that I forgot I was going to design to accommodate it.  Big oops. Ah well, I may get lucky and not need to tension the tracks that way (Denial: it's not just a river in Egypt).

I still have to wrap up the design on the side plates and the rest of the head, but they are well on their way and with luck I may be able to get the side plates printed by next weekend.  Ultimately, though, I can do without them for now since they are just decorative parts.  Even with the new nozzle, the other section of the head will take most of a day, so that may be next weekend's big print.

I do have some concern that my idlers may be too narrow ... not so much a problem for the droid's stability, but more for the tracks.  The idlers definitely don't (and can't) extend the full width of the links, but I could extend them outward a bit (as long as they cleared the traction pad clips).  In that case, I'd have to redesign and reprint a few things, make a few bolts longer, and make a few mounting posts shorter.



Apart from the failed traction pads, there were a few other hiccups.  The rear shell warped a bit across the part's width.  You can see the curvature on the right in this photo:

[Image: 20220805-rear-shell-01.jpg]

I used the heat gun and some 1-2-3 blocks to encourage it to straighten out a bit.  I also had to do a major support-ectomy to get that material out of the gap between the hinges.  It was also a pain for the Electronics Box.  I need to adjust my profile to make it a bit easier to remove.

In fact, the rear body shell nearly failed, because I totally forgot to build in the built-in support like the ones I did for the front body shell, which I realized just as it was about to start curving toward the relevant overhang.  I ended up supporting the overhang with my bed scraper until the plastic was rigid enough to support itself.  It's a little rough in that area, but that's fine.

[Image: 20220805_144024-smaller.jpg]



Earlier I mentioned I'd changed the electronics arrangement.  Specifically, I moved the ESP32 microcontroller to a removable panel just forward of the opening for the Electronics Box Lid and the fuse box.  The ESP32 is a bit offset on the panel to hopefully allow USB to be plugged in (most likely it'll need a 90 degree adapter).  I'll have to be careful to turn off the droid if I hook it up to USB (supplying it with two sources of power is a good way to fry it, I believe).

[Image: 20220808-esp32-mount.png]

While putting it in the "brain box" like I originally did would be cool, having ready access to the main power switch is more important.  I've gone with a 40 amp DPST rocker switch for that purpose, which was the largest rating I saw that was likely to fit.  I still had to be careful with the switch placement to make sure that it didn't obstruct the front axle and would fit under the cover, so I elected to make an angled platform for it (Which is also visible in the screenshot above).  Even so, I will have to make sure the wires clear the switch, and I had to put my voltmeter in sideways.


On the physical hardware front, I've cut my front and rear axles to length, and installed what feels like a million heat set inserts.

Here is the list of the inserts I've designed for so far (assuming that I haven't forgotten about some).  A few are M5, but most are M3, so if I don't specify, they're M3.
  • Two Front Inner Side Plates (3 each)
  • Front Bottom Plate (4)
  • Front Body Shell (4)
  • Electronics Box (4x M3, 6x M5)
  • Rear Bottom Plate (12x long M3, 4x short M3)
  • Two Rear Inner Side Plates (5 each)
  • Rear Upper Crossbrace (4)
  • Upper Stalk (4)
  • Two Lower Stalks (6 each)
  • Four Sprocket Bodies (6 each)
  • Two Inner Idler Mounts (2 each)
  • Two Outer Idler Mounts (2x M3, 4x M5 each)
  • Head (2x M3, 2x M5)

Note: I have two types of M3 inserts ... the short ones that have straight vertical ridges, and longer ones that have helical ridges.  I got the longer kind fairly recently, so I designed some of the parts for the short ones, e.g. the various stalk parts.  I also used the small ones where space is a concern (e.g. the two rear wings on the rear bottom plate).


Awhile back I bought 30 608zz skate bearings to add to four that I already had handy.  The build currently uses 32 of them (that I can remember), so at the moment I have enough.  However, the idler mounts on each side have the option of adding two more idlers between the main three, so that'd be 40 total.  I'll need to order some more for that.
  • Eight Idlers (2 each) = 16 (24 with the four optional idlers installed)
  • Four sprockets (2 each) = 8
  • Two lower stalks (1 each) = 2
  • Upper stalk (2)
  • Neck rotation (2)
  • Rear Body Shell (2)

The new bearings came lubricated with grease that is meant for rapidly turning parts (it thins out as the bearings get hot) ... a lot more rapid than this droid is likely to run.  This makes them stiffer than the other bearings I already had.  Soaking them overnight in gasoline helped dissolve the original grease.  I lubricated them afterward with white lithium grease, and now they're a lot more free spinning.  But they also smell like gasoline, so I'd air them out for awhile if you attempt it.

As I recall, I've also used 10 623zz bearings.  Two in each of the intermediate pulleys in the drive system, two in the rear shell/upper stalk pivot, two in the pitch arm, and two in the tilt arm.  Actually, I've misplaced a few, so I also have to order another set of these.


Once I get the idler mounts printed, I can start actual assembly and testing.

Having done a couple of test fits, I can tell already that the rear body shell is going to be a pain to install.  There are two bearings (one in each hinge arm) and four spacers (red and blue discs in the screenshots) to hold in place while the axle goes through the chassis.  

[Image: 20220802-ldf1-rear-shell-pivot-01.png]

[Image: 20220802-ldf1-rear-shell-pivot-02.png]

I could put a bolt through the opposite side to meet the axle and hold the parts in place, backing the bolt off as the axle advances ... except there are lock nuts on either side of the assembly, so putting either through isn't going to be a picnic, much less both at the same time.  I'm considering tape to hold the parts in place, something that I can pull free later.


Wiring is also going to be a bit difficult.  The droid's design is quite interlocked (e.g. the front axle), so the order of operations will be important.  I designed some attachment points on the idler mounts for a few extraneous PCBs (such as audio) but I'm pretty certain right now that if this droid has audio at all during its initial run, it's going to have to be a Bluetooth speaker.

And I still haven't even modified Penumbra's code to deal with the head servos and neopixels.  It'll work for driving out of the box, but the other features involve adding in the i2C and Neopixel libraries and coding stuff for those.  It never ends...
Reply
#37
T-Minus 1 week (YIKES)

It's the FINAL COUNTDOWN.  NA NANA NA ... NANANA NA NA...

Good news: Barring any major changes that I might need, I have now completed all of the large scale print jobs that I'm going to get done for this droid before Dragon Con, including the idler assemblies, the traction pads, and the head.  I am not going to bother with the side plates of the tracks right now as I am running low on PETG, time, and energy.  The handful of smaller parts that I still plan to print (mostly various small parts for the head) can be done with the PETG that I have left or with some PLA.

In the course of this build so far, I have used up two full spools of silver PETG (and part of that troublesome spool), a full spool of the "silver" PLA, two full spools of black PETG (and the leftovers of a few more), almost an entire spool of white PETG, and some small amount of grey TPU and white PLA (for the LED lenses).



As mentioned in last Monday's post, I'd started printing the left side idler brackets.  I had to babysit this print because I wasn't sure how much filament I had left on the spool of black PETG that I'd bought for this final push.  The print ended up stopping short of the end of the spool by about half of one layer of windings.
[Image: 20220808_190212.jpg]


I printed the right side on Tuesday, which involved even more babysitting.  I had to use what remained after the previous night's printing, as well as what remained on a couple of other leftover spools of the same filament.  I ended up having to watch until each one got close to running out, and then feed the start of the next spool in behind it.  Needless to say, I was up very late.

After that, I also printed the remaining idlers (including modeling and printing the smaller ones).  This used up nearly all of the remaining black PETG (I have less than half a layer now).  With those printed, I could start on the idler assemblies.

The top idler's axle is a 5/16 x 3 inch bolt that passes through the outer side plate and both idler brackets.  Below that, the centermost of the three rear M5 inserts in the Electronics Box serves as the second attachment point (it's the place where the chrome colored M5 bolt was, in the photo from last post), so it has a slightly longer 20mm M5 bolt.  

Finally, there is an hole to either side for an M3 socket cap bolt.  Each goes through the rear outer side plate and into an insert that I'd already installed in the rear inner side plate.  These M3 bolts are mostly just there to keep the idler mount from yawing.  

I did make a poor decision when I modeled them.  The issue is that I didn't make the recesses for the heads very deep, so they require 35 mm bolts, which have to be screwed into a tightly toleranced hole through almost the entire thickness of the standoffs that are part of the inner idler mount.  I plan to revise the parts in case I ever print them again, because doing this four times was a bit of a pain.


In any event, the process for each idler assembly was:

0. The top idler's axle should've been placed through the hole in the rear outer side plate (pointing outward) when you assembled the side plates.

1. Install the brass inserts in each idler bracket (four M5 and 2 M3 inserts in the outer bracket, 2 M3 inserts in the inner bracket)

2. Place the inner idler bracket onto  the axle for the top idler.

3. Put the hex bolts that serve as axles for the five lower idlers -- they are 5/16 x 2.5 inch bolts -- through the inner idler bracket, pointing outward, with the heads settled in their recesses.  Most of them can't be added after you attach the bracket because they are too long to angle into the holes.

4. Tape the heads of these bolts in place with some gorilla tape (most can't fall all of the way out, but there are too many to easily hold in place and they can move enough to let the idlers fall off before they are secured).

5. Secure inner idler bracket to the chassis with the other three attachment bolts (one M5 x 20 mm, two M3 x 35 mm).

6. Hold the chassis with the idler axles pointing upward, and for each of the six axles, you want to put on the inner 5/16ths washer, the inner 608 bearing, the printed idler itself, the outer 608 bearing, and finally the outer washer.

7. Once that's done for all six idlers, you place the outer idler bracket on, making sure the six axles go into their holes.  Secure the bracket with a nylon lock nut on each axle, but as you do, make sure the idlers are still free to spin.

Once both assemblies are done, you'll end up with this:
[Image: 20220810_134500-smaller.jpg]

(In the above photo you can also see the switch and voltmeter that are normally hidden under the brain box cover.)


I started the large head print on Friday morning, a bit after midnight.  This print lasted a bit over 17 hours, even with the larger nozzle.  Being under tight time constraints, I kind of got in a hurry and didn't notice two things before I started the print.

First, when I modeled my built-in support for the opening for the droid's eye (near the red LED in the pic below), I constrained it to the thickness of the surfaces that it attached to.  When I checked the gcode before printing, I didn't really think about it.  When that part started printing, I noticed that the "support" was actually only one perimeter thick.  Granted one perimeter on a 0.6 nozzle, but still.  Luckily, it was really only meant to keep the circular opening from drooping, and it worked, but it was rather nerve-wracking for awhile.

[Image: 20220812-head-02.jpg]

This is obviously not my cleanest print ever.  I haven't spent a lot of time dialing in my profile after the nozzle upgrade, so there are a lot of blobs, strings, and a few rough patches)  It's also been extremely rainy here for the last two weeks.  The garage doesn't do much to keep the humidity out.  


Second, I messed up the orientation of the print.  By necessity, it's printed standing on its side.  As a test, I originally sliced the head so it was oriented with the top of the part toward the front of the print bed, so from my perspective, the droid's "face" was looking toward the left side of the printer.  

I recently turned up the part cooling on the printer, which blows from the right side of the printer (I haven't gotten around to modding the printer with a fan that cools from multiple directions like I did on my old printer).  That side tends to look better, so I meant to rotate the part in my final gcode so that the droid's face was looking into the air stream.  

You may have realized from the above photo that I forgot to do that, and it was facing in exactly the wrong direction.  I only realized it after the print had already been running for awhile.  Therefore, the nicest surface on the print was the back of the head... which is also the one surface that is completely featureless.

On the plus side, I DID remember to add built-in supports for the corners of this rectangular opening.
[Image: 20220812_165621-smaller.jpg]


17 hours later, the print finished.  It will do.
[Image: 20220812_175620-smaller.jpg]


With the major printing done, I've now moved onto some perfunctory body work and paint, as well as getting started on the wiring.  With luck, I'll have everything wired up and assembled by next weekend, which gives me a little time to do some troubleshooting and performance testing during my spare rest week and maybe do a little work on Four-Nines before I have to depart for Atlanta.

A little Milliput, a random orbital sander, and some primer later and we have this.  Sorry, it's a bit blurry; you'll have to take my word that it's an improvement:

[Image: 20220814_135832-smaller.jpg]


I've also been polishing the lenses.  The red tint is from the polishing compound.  The curves on the surface are artifacts from printing that I'll need to sand more to remove..
[Image: 20220815_013130-smaller.jpg]



In terms of wiring, I've sketched out a plan.  I'll post something when I have time to create a much better rendition.

In the meantime, I've decided that I will not be using Penumbra for LD-F1's first appearance.  Mostly because there's no good introduction to working with it, and I don't have the time or energy right now to go diving in to integrate a bunch of custom code (for controlling the head servos and running the neopixels).  For now, the droid will be controlled with the R/C transmitter that I mentioned over in my Treadwell thread, and the ESP32 will only be running the droid's head neopixels.  

It does mean having to figure out where to mount the receiver, and more complicated wiring in general.  Since I'm not using Penumbra, I'm not using I2C to drive the servos through the PCA9685 servo board, so the servo signals will have to be passed from the receiver into the head individually.  I'll likely still use the PCA9685 as a power distribution board for the LEDs and Servos.

I already wrote a basic sketch to handle the neopixels.  It's currently a bit glitchy, which I believe is due to the need for a logic level converter on the signal wires.  The ESP32, though 5V tolerant on its inputs, is actually a 3.3V microcontroller and its outputs are apparently driven at that voltage.  This can cause weird behavior for neopixels.
Reply
#38
This continues to be a fascinating build and I'm really enjoying following it.
I was particularly pleased to see that someone else uses Milliput on their droids! It's one of my favorite secret weapons for fixing things that don't go quite as planned.
Good luck! and I can't wait to see it.
Reply
#39
(08-15-2022, 08:28 AM)savagecreature Wrote: I was particularly pleased to see that someone else uses Milliput on their droids!

I used the terracotta version on BB-5M a few years ago, but that was getting very old so I got some fresh yellow-green the other day.  It worked a treat.

Had to go get some wire and connectors and more paint/primer today.  It's too humid to use it, but it's starting to come together.


Edit: I've also done some config on my radio so everything will control properly once I assemble it.  This is similar to what I was doing with Treadwell, and in fact this model started out as a copy of that one.  Here are the relevant settings...


Inputs:

[Image: 20220816-taranis-setup-01.png]

As with Treadwell, the right stick (Inputs 2 and 4, named RY and RX respectively) controls the tracks.  I have switch SC (the 3-pos switch above the right stick) weighting these inputs to alter the speed of the droid: Slow, Normal, and Fast.

The left stick (Inputs 1 and 3, or LX and LY respectively) controls the head tilt and nod. I've set the left stick's "speed" settings to be controlled by switch SB.  Since this is sent to a servo, it is actually limiting the range of motion to 50, 75, or 100%.  I may change it to alter the servo's actual speed later (which would be set on the Mixer page, so there would only one line apiece for LX and LY, each at 100% weight).



Mixes:

[Image: 20220816-taranis-setup-02.png]

This page is where the magic happens.  As you can see, the first two channels go to the drive motors for the left and right track.  The first four lines perform the tank mixing (adding the RX value to the RY on the left, subtracting it on the right).

Channels 3 and 4 control the two head tilt servos.  These are mixed exactly like the tracks are.  However, since the two servos are oriented 180 degrees from each other, one will need to be inverted.  We will handle that later.

Channel 5 is for the head rotation.  This is currently set on the left potentiometer on the radio.  I had it set on the right (which is marginally preferable since it has a detent for center position), but that one is a little jerky at times.


Outputs:

[Image: 20220816-taranis-setup-03.png]

This page doesn't do a whole lot at the moment.  Mostly it inverts the output of channel 4 so the head servos both move in the right directions.  However, once I get the droid assembled and can check the movement, this is where I will set the min and max values for channels 3, 4, and 5.
Reply
#40
Impressive
Reply


Forum Jump:


Users browsing this thread: 24 Guest(s)