Welcome to stockholmviews.com

My newest content fetched from Worpress posts!

November 27, 2023

RC car brushless motor PCB drilling spindle

A PCB drilling spindle intended for my new project, that are a combined laser engraver/developer for PCB prototyping for simple 1 and 2 sided boards. I intend to use a UV laser to develop photo resist prepared boards and maybe a regular laser to use the spray paint variation of this task.

This is a ongoing project that may change over time so keep looking back for updates and upgrades.
Latest update 27 Nov 2023

For now lets focus on the drilling spindle

The motor and ECS was chosen on a budget and what I beleive enough power for the task (to be reviewed and judged later). The motor is a 3300Kv 800W motor and the ECS is capable of 60 Amp momentary current, initial test shows that I will never come close to that.


This motor are made for and  intended to be used for RC cars 1:10 or smaller. The ECS designed to be controlled by a RC servo receiver and expect to have a 50hz based PWM signal.. so hooking it up to a GRBL board need some tweaking.

The motor has a 1/8″ (3.175mm) shaft wich is perfect for my needs since I can use a simple (but precission made) shaft coupling to attach my drills and V-mill bits with the same size shaft to the motor shaft more on that later on. 

The test rig looks like this and here it is running froma 7.2V accumulator package. When used as a spindle I will feed it with 12-14V DC to get somwhere between 40 and 50K rpm.

The arduino nano uses the position of the potentiometer (voltage on the analog pin) to set the corresponding PWM value on the digital pin for ECS pwm in pin.

Code used for the arduino nano that I for the time beeing are using to get it to spin att my desired speed and start at that speed when powered on is the following. Code is not entirely mine just sligtly modified to start att power on and to exclusivly run clockwice. The code below contains comments that should explain whats going on. Will take a look at that “delay (4000)” part and se if I can cut the delay down a bit.

/*

        Arduino Brushless Motor Control

   by Dejan, howtomechatronics . com

   Modified for PCB drilling spindle use by stockholmviews . com

*/

#include <Servo.h>

Servo ESC;     // create servo object to control the ESC

int potValue;  // value from the analog pin

void setup() {

  // Attach the ESC on pin 9

  ESC.attach(3,1000,2000); // (pin, min pulse width, max pulse width in microseconds)

  digitalWrite(2, HIGH); // Zero the ECS  (Digital pin 2 connected to Analog pin 1 (A1))

  delay(4000); // delay to allow the ESC to recognize the stopped signal

  digitalWrite(2, LOW); // Zero done and motor starts at Potentiometer preset speed (Swiper on pin A1 pot value used 20K)

}

void loop() {

  potValue = analogRead(A1);   // reads the value of the potentiometer (value between 0 and 1023)

  potValue = map(potValue, 0, 1023, 90, 180);   // scale it to use it with the servo library (value between 0 and 180, i choose 90 to 180 for clocwise only spindle)

  ESC.write(potValue);    // Send the signal to the ESC

}

 

July 1, 2023

Another BF-30MVL CNC Conversion

The victim a HBM BF-30MVL bench top vertical mill.  

My take on the BF-30MVL CNC conversion is based on my needs and thoughts about how to do this and by no means the right way or the only way! This chinese machine is sold under many differnt names and various motor and drive trains like Precision Mathews PM-30MVL, Bernardo BF30 Super, NOVA BF30VL, TOPTECH BF30, Weiss WM32 / 30,  Warco WM18 and many other brandings.

The HBM BF-30MVL variant was chosen because of its 30 Taper spindle that I prefer over the R8 ot MT3 that most other variations are equiped with.

Updated: DEC 18 2023 and alive.  Note: some downloadable files at the bottom of this page.

-Timing belts and Ballscrews-

I want a build that are space saving so thats why I chose belt driven ballscrews, a nice things with belts is that I also easy can change the gearing if I find needs or performance benefits to do so.
And even if you want direct coupled steppers or servos you still need some couplers that can even out the imperfections in the motor to screw coupling, this might be a bellows mebrane or oldham coupling, non of those are perfect nither is the belt drive coupling that I have chosen we all have to take a decission here and I have made mine and do not judge anyone that may chose other ways :D

-AC servos-

From China, today chinese made and branded AC servos are in the same price group as closed loop steppersmotors today so I went for servos they are covinient since they do not require aditional power supply to run (I know that is also true with some stepper drivers). I have chosen some servos and drives that are nopt realy well documented yet, I have still manged too get them to act pretty much the way I want them to do, some info will be posted downwards this blog and will be updated as I find some new features an/or configurations that might improve the functions I need.

A1-SVD15
-Controller board and software-

 early in my planning stage decided to go for LinuxCNC that is part from a great software under constant development also suported by a friendly and helpfull group of people in the LinuxCNC Forum.
I first started out with an old PC with parallel port and a cheap breakeout board from the same country that I got my servos from but as soon as I found the great LinuxCNC compatible range of MESA Ethernet controller boards I was sold, they are not exactly cheap but not either expensive more like worth it.

-My pile of parts and software-

  • LinuxCNC 2.9.1:  (Will change this when apropriate and also make notes if config need changes).
  • Servo motors: For XYZ:  90ST-M02430 and A1-SVD 15 Servo drivers
  • Ball screws: DFU2005 for XY and DFU 2505 for Z
  • Belt drives: For motor to ballscrew coupling XY 30T-30T HDT5M-25
  • Belt drive: For motor to ball screw coupling and reduction on Z   30T-60T HDT5M-25
  • PC: Old HP G3 Mini Core i5 mini PC   +  MESA  7i76e 
  • Miscellaneous tuff: Some NC PNP prox sensors and other small electric and electronic parts (Might mention them later).

I have completed the motor/ballscrew installation on my X-Y and Z-axis and have also got the MESA card to talk to the chinese servo drives, this is looking promising. Y-axis servo motor transmission/coupling BF-30MVL mill

I decided to use belt transmission for AC servo to ball screw coupling to make my build more compact (having a limited space in my micro workshop).
This i how the Y-axis looks the X-axis is very similar but the Z-axis is geared down 2:1 to give it some more tourqe to lift the head. 25mm wide 5M belts are used for minimum backlash (close to zero). will post some more images later.

3D Printed Homing/Limit switch holders

As you might know 3D printed CNC machines like PrintCNC have proven to actually work, however in this project I have choosen to use 3D printed parts only in parts that will live a life without mechanical stress.

Easy to adjust proximity sensor mount is such a part Printed in ASA-CF with M5 grub screws to lock the sensor in to possition and holders themselves attached to the machine with machine screws and double sided mounting tape (I´m satis with X-axis but will redesign Z and Y).

The Spindle

I will not leave any kind of comments or thoughts about the stock DC motor spindle that I got with the spindle at delivery and are still using (15 Dec 2024) I move on to the upcoming AC servo spindle drive instead.
I have just recently received a 1.8KW 3000rpm China AC Servo motor and driver that I plan to get to work and serve as a Spindle motor on this mill, my plan is to have a manually switchable (by belt moving) dual spindle speed range of 0-3000 rpm and 0-6000 rpm range where the first gear obviously will have more tourqe.

At the moment I have got this “spindle” motor to behave kind of nice with speed and direction controll on LinuxCNC 2.9.1 in step/dir mode together with the QT Dragon UI…. more to follow, might post ini and hal files when I’m confident haha ….
I have still not made any mounts and pulleys to be able to put this servo in to use as a spindle motor so I actually don’t know how it will work in reality but… verdict will follow.

-Right now I have made some progress in my cnc conversion project. the following steps are done-

  • Ball screws installed (Dual nut screws).
  • Base cut to extend Y-travel with about 50mm
  • AC servo motors installed and tuned.
  • Limit/homing switches istalled and rigged.
  • Controll box is up and running but need some finnishing work and a cover.
  • Tramming done. 

-In the piplane to do-

  • Fabricate and install a milling head spacer for better Y-axis work space for vices.
  • AC Servo spindle motor with belt drive to be contructed and installed (1.8KW AC servo motor and drive on order, multi rib belts will be turned in house.
  • Pneumatic actuated power drawbar with spring washers (will use threaded draw bar).
  • AC servo motor and the pneumatic power drawbar might tempt me to try a new ATC concept ;)
  • Tidy up installation and make some covers for the belt drives and servo motors.
  • Chip controll and mist lube/cooling.
  • Tool setter to be installed.
  • 3D probe to be installed.
  • Covers and chip controll solution not yet designed.

-Movie playlist-

First: Homing sequence, 2nd Surfacing simulation, 3rd Compact fold away CNC enclosure

-Image galleries-

Some comments on first gallery:  The brazes (white angle iron on the sides of the Z-axis colkumn)  to the wall behind is a greate improvement of the stabiliy of this mill, I use oversized holes in all possitions to allow for clamping the collumn without implement any distorsion in the structure, the goole is to controll vibration the angle profile is 180x90x10mm and expandtion and column bolts are M10.

The 2nd image slider shows my compact living foldable CNC cabinet for chip control.

-Links and downloads-

English translation of Chinese A1-SVD Series Servo drivers user manual

264 Downloads

My LinuxCNC config files for the HBM BF-30MVL “not really stock”.

59 Downloads

-Aditional notes and comments-

According the A1-SVD 15 drives, I currently use the following settings including and part from delivery stock.

  • Fn009 – 230 (Supply Voltage).
  • Pn001 – Motor type (Check motor manual) I use “7” for my 750W AC servo motor.
  • Pn002 – 2 (Step/Dir mode) 
  • Pn003 – 1 (Motor enable) enabled at power up.
  • Pn098 – Encoder gearing, i use 5 for X and Y and 10 for Z since I use belt gearing 2:1 for Z And 1:1 for XY.

If you find something strange in those settings or my LinuxCNC config I would love to hear from you!

 

 

 

January 14, 2023

3D printer hardware test board build

This writeup is about how to use Klipper firmware on an old abandoned 3D printer mainboard to use as a test rig for 3D printer hardware.

That was one of the longest headers that I have been written :o)
Klipper firmware can be installed on a large range of 3D printer main boards both low and high end devices. The Klipper host and UI can be installed on any Linux device with a few options of UI to use.
It can be hosted on Windows and MacOS but then you are limited to OctoPrint UI*
Klipper test rig for 3D printer hardware

What hardware and software did I chose and why.

  • Klipper firmware since it is easy to tweak and change hardware config simply by edit a single text file.
  • Fluidd User interface because it has a modest demand on the host hardware it can actually run ok on a Pi Zero first gen or a Pi of the verry first editions it also have a nice looking UI with lots of config options however not as extensive as OctoPrint but I like it clean

  • ANY Board that might be close to the trash bin or in the recycle bin that fits the task and there are many at Github you can find those that already have a prebuilt config but it is definitely possible to get most boards with compatible MCU to work. 
  • Why? I wanted to be able to test new hardware like extruders and complete print heads of the printer before installation. Also I can use the bord to heat up a clogged hotend for cleanup, no oven no heat gun needed!

  • Write up purpose  Well it isn’t quite as straight forward as you think to fool Klipper to work with a lot of hardware and sensors absent so I will let you know how to cheat ;)

*Att least least time I checked.

Installing Klipper host on any Linux machine Raspberry pi or other 

  • This is the easy part if you prefer easy, look elsewhere if you fell to be “advanced”.
    Install Linux/Rasperry OS or whatever Linux you feel for.

  • Visit Kiauh at github and follow the easy instruction to install Klipper, Mooraker and Fluidd just install Fluid, Moonraker and Klipper (Or chose any other config and “you are on your own ;) ”  https://github.com/th33xitus/kiauh.
    https://www.obico.io/blog/install-klipper-with-fluidd-ender-3/

  • Install firmware on your old “but newborn 3D hardware testing motherboard”  3D printer
    motherboard. If you prefer video this is someone else tutorial   or you can get a ready made iso here Fluid Klipper ISO

  • Surf to the ip your klipper install was installed at, if you cant find it look in your router config or get the excellent  Fing app 4 free to check your connected network devices for IP!

Configuring Klipper/Fluidd as a test rig

This is was this post is all about, geting klipper/Fluidd to run is covered by many other websites and bloggs so lets get on with what you are here for :D

Now when you have Klipper running and are able to connect to the host lets get in to the configuration.
Here is where you figure out that Klipper are quite safe in basic configuration, it will not allow many deviations from an expected 3D printer config.

So in my case when I wanted to test my newly designed The OXtruder I had difficulties to run the extruder only because Klipper expected that I had….

  • Homed the printer
  • Heated the “hotend”
  • Heated the “bed”
  • ……

How to cheat Klipper 

Homing the printer without homing the printer insert or edit this [force_move] in to printer.cfg in klipper menu (http://xxxxxx.x.x/#/configure) 

[heater_bed]
heater_pin: PD4
sensor_type: EPCOS 100K B57560G104F
sensor_pin: PA6
min_temp: -273.15
max_temp: 200

[extruder]
step_pin: PB1
dir_pin: PB0
enable_pin: !PD6
rotation_distance: 34.095
microsteps: 16  
gear_ratio: 5:1 # Orbiter gear ratio
nozzle_diameter: 0.400
filament_diameter: 1.750
heater_pin: PD5
sensor_type: EPCOS 100K B57560G104F
sensor_pin: PA7
min_temp: 0.0 
max_temp: 240
max_extrude_only_distance: 500.0
min_extrude_temp: 0.0

[force_move] 
enable_force_move: true
# Set to true to enable FORCE_MOVE and SET_KINEMATIC_POSITION
# extended G-Code commands. The default is false.

Complete Tronxy x5sa CXY-V.2-0508 Config file
File above will most likely get you going to produce a lab board with virtually any 3D printer main board.
I have done the same with an old Ender 3 Pro board (Pre silent board I may upload config for this board later).

Faking heater sensors

The easy way is to jumper the heater sensor pins “sensor_type” and “sensor_pin: PA7” is your targets) on the board with appropriate resistors.
If you chose to have the same sensors as named in the config as in my example you will be fine with 18-20K for extruder and 10-14K for heated bed, check image. 
EPCOS 100K B57560G104F Data sheet

NOTE: Values above may be dependent on you board/sensors/steppers/gearing e.t.c

Contact me if you get lost but not until you have hit the wall ;)

Proof of working riggs.

Water cooled hot end prototype (sorry for the flickering LED lights I’m kind of a rookie on video, I will try to better) . 

 

 

 

 

January 4, 2023

Bondtech V2 inspired “bowden” extruder THE OXtruder

This extruder is inspired by the new V2 QR extruder from Bondtech and are easy to print and build.
It is strong as a OX and is running smooth as cream. 
Bondtech 8mm shaft gears for QR extruder

BOM for THE OXtruder is extremely short:
1set of 8mm shaft BMG drive gears (Bondtech)
1psNEMA17 Planetary 5:1 gearbox motor (AMAZON)
4pcs of M3x30 screws.
1pcs of M3x35 screw or threaded rod.
1pc M3 nut for tensioner.
1pc Spring for tensioner.
2ps large M3 washers (spring seats or just print some).
1 or 2 Bowden connectors (I chose to use one M5 treaded for the exit side and just a short bowden tube for inlet guide).
HOURS
of your labor and some wait for the prints to be done.
Links to print/CAD FILES found att the botom of this page

Some inspiring photos of The OXtruder + build guidance.

 The OXtruder the mighty stron 3D printer extruder

This is my Fusion360 CAD for The OXtruder
inspired by the Bondtech V2 extruder that are said to be usable both for direct drive and bowden setup however you would probably not use this monster (520gram including mount) as a flying extruder on a delta for sure ;0)  

This extruder are also sharing some parts that you will recognize from the Orbiter V1.5 from which I used the pressure/idler arm. The “dual drive gears” are also the same as on the original QR from Bondtech that also been used on the Orbiter V1.5 (Orbiter V2.0 uses shorter versions of the same diameter gears).

The working prototype
This is my first test print of this extruder and it came out good enough so I will use it like in this picture!
The prints could have been nicer but hey it works just fine like this, I even omitted the end cover since I find it to be more like a nice thing to offer but not really necessary.

The only issue I had was that some tolerances was a bit to tight but that is now corrected so the prints should come out kind of “ready to assemble”.  For the tensioner screw there is a regular M3 hex nut embedded between the two main body halves and for the idler arm a 3mm pin or screw can be used.

 

Left: This image shows one of the issues that the side cover plate will solve, the screw at lower left side interfering with the idler arm a bit.

With the end cover this issue will be solved as long as you be carful with the tightening force.

The area around this screw/hinge is slightly adjusted in the final CAD and print files.

 

 

Left: The filament path will take 4mm OD PTFE tube (Regular bowden tube) as a liner for smooth and renewable filament guidance.

The Press fit connector that I used has a M5 thread, cut that thread with a tap or just drill the hole out to 4.5mm and force the connector in like a self tapping screw (Not as nice but works).

And don’t forget to put a short bit of bowden tube in before yo attach the connector ;)  

Also make sure to dress the ends of the guide tubes to mate the drive gears as nice as possible.

Before installing the spring and screw for the idler make sure to have the motor gear correctly aligned wit the idler gear and filament path (Idle have a little bit of axial play to self adjust)

The OXmount

The Oxmount is designed for 5:1 planetary gearboxes with 36mm diameter edit if you need other size.

The above photos of a printed extruder is a early prototype and the CAD files are now updated with a new version. Get all the CAD files here: https://grabcad.com/library/the-ox-extruder-for-3d-printers-1
Or just the 3D print files here: https://www.printables.com/model/364011-the-oxtruder-a-powerful-extruder-for-3d-printers

Render of the new version.

13th JAN 2023  Will be updated when if needed ;)
Your feedback will be greatly appreciated.

 

October 12, 2022

Milling 30 taper lathe adapter/chuck

This post is about making an adapter to be able to use the ISO30/NT30/BT30 milling tools that I own on my lathe.

That is kind of a long header but that is what tis is all about, being able to use the same tools on multiple machines. 

I will skip images of the stage of turning the lathe spindle interface since that may differ from machine to machine I will however describe my method for doing that for and on a Emco maximat 11 lathe in a future post (It might already been posted when you red this).

The ISO30 adapter for my Emco Maximat 11 in its half way state.

Emco maximat 11 + ISO30 Taper tools

This is how it looks after that the first steps has been taken, cutting the short taper and drilling/tapping the 3xM10 bolts to gat as close as manually possible to comply to the DIN 55021 Size 3 nose standards.
This can be kind of changeling and you may like to find your own method of doing this since there are some different ways of doing it. However this is what you should aim for (Pic below).

Short taper #3

Short taper #3 DIN 55021 Size 3

Emco maximat 11 ISA30 taper adapter

The spindle nose interface looks like this when done, not really mirror finish but it is smooth enough to work flawless (Ignore the way I placed the parts on the ways I know I shouldn’t but it was done with care and just for the pictures).  Also in the picture the drawbar with the aluminum guide bushings fore the 26mm bore of my lathe the drawbar is a standard M12 threaded rod.

The finished product

ISO3+-ER32 tool holder on a Emco maximat 11 lathe

Mounted on the spindle nose I simply cleaned up the chunk of steel with some passes to make the front face flat and circumference round and centered then I started to cut the 30 taper.
Turning of the 30 taper is done in the same way as the short taper and this is how it looks when done.
The main goal with this project was not to be able to use milling tools in the lathe as you might think.
The actual reason I started this mini project was to make a chuck to be able to turn custom tools for my mill from either using 30 taper blanks or modifying various cheap 30 taper tool holders available from many different internet sources.

30 taper
30 Taper

The result

 

 

September 8, 2022

Emco Maximat 11 Solid tool post

Why consider a solid tool post?

My solid tool post in installed an ready to work!

Well from what I heard and what I think after been reading a lot about solid tool posts and also watched quite a few videos at the regular place is that we can expect is a mor rigid coupling between the cutting tool and the work piece. 

The second argument which I came to conclude during the design of my take of a solid tool post is that it sorts out a minor issue that I found out when changing out the stock tool holder with a Aloris style quick change system.

I bought on advice the AXA sized  QC (The set above) and it works just great* however I found out that most of the time the height adjustment bottomed out to get the cutting edge at the center of turning. Now since I was about to make a solid tool post I hade the chance to address this so I did!  I know that there are other ways to solve this problem and that is to buy “slim 250-101 tool holders”  but they are hard to get and comes in a limited amount of styles.

Getting the stock for this project

Most heavy duty machines are made out of iron castings and the reason is that part from being high mass it is also have good qualities in regard of vibration dampening as well as being stress free and therefore does not warp easily. With this in mind I started to look for a cast iron slug and came across vintage iron Balance weights!

I found out that a 10kg cat iron weight could be had for about 10euros at the flea market so I aimed for that and quickly found what I needed :)

This is the weight I got the easy task was to cut of the handle then I chucked it up the best I could to be able to part of a suitable chunk.

The base of this weight was just a bit wider than the cross slide T-slot plate so it couldn’t be better.

the original compound slide have the tool post mount at 63mm above cross slide.

Based on this and my wish to make this solid tool post a bit lower than the original to give me headroom for larger tools and some other cool things that I have in mind made me aim for a height of about 50-55mm I ended upp with 52mm this number is in no way magical so you may chose what suits you ;)

Machining cast iron will get you dirty

In fact the whole workshop will become dirty as well as your lathe so make sure to protect it with whatever you come up with. Cast iron will NOT produce chips it will produce black dust.

On the positiv side of the coin you will find that it easy to machine evet thought you can’t expect any mirror finish. Machining a iron weight like this will discover two things.

One the top of the weight has a recessed circle and this is a cavity used to calibrate the weight so count on that and expect to have a hole at that location to take in to account.

Two The quality of the Iron used to cast this kind of weight was never intended to become machine parts so expect some porosity (You can se some on the top of my tool post).

Both of those problems can be overcomed  by filling the voids with some steel epoxy or epoxy mixed with some of the cast iron dust you produced while machining your tool post.

First steps chunk parted of with some margin until….

I chucked up my cast iron chunk with the wide end in the jaws. Then I parted it off but left enough material to decide what side to do the main machining on, this since I didn’t know what to expect when I started to machine the wide end of the piece!  

At this stage I turned the to be tool post around to face and clean up the wide end.

Looking better on this side but I still going to use this face down.

Jumping fast forward here since…..

Hmmm.. drilling and counter bore for the T-slot screws is nothing to show so I jumped a bit forward to show this picture. You can clearly se that there still are some defects in the casting visible. I went for a M12 bolt as this is what was stock, the Bostar QC however wants 14mm+ so I made some temporary bosses to address the play.

I later made a full length bushing/sleeve  and I have considered to go M14 but I’m not suer if that is needed.

I blackened the tool post with Blackfast 181NF to make it look a bit better. I may or may not take care of the casting voids in the future but the do not affect the functionality.

Finished product the solid tool post ready for action!

The solid tool post chunk mounted to the cross slide with 4 hex screws An I can assure you this is far more stable and vibration free than with the compound slide installed and even if you lock the gib solid on the compound. 

I highly recommend to any owner of a small or mid size lathe to try this on my Emco Maximat 11CD it made a world of difference in rigidity.

My version is by no mens better than any other and I can assure you that find way more fancy versions of this mod if you browse the www but this works for me and I want to encourage you to make your version and make it suit your needs because this was so worth it!

Note: When done with this project I wanted to do a small test with putting a 2mm carbon fiber plate between the QC and the solid tool post to se if that could further reduce vibrations. How dit it go?
Well the CF shim is till there it might be psychological (like snake oil) so I will try to do some measurements in the future to stay sane ;)

*after some modifications as it was a CE (China Export) product will post a write up about my mods to stay tuned.

Worpress posts ends here!


How to include Wordpress posts in a static HTML page
(Or how I did at least!)

This is the how to.

1.

I created a php file that i call ok.php (You can name it whatever)
This php file now rests in the same directory as my .html file and
contains this code:

***************************************************

<?php
$args = array( 'numberposts' => 6,

'post_status'=>"publish",'post_type'=>"post",'orderby'=>"post_date");
$postslist = get_posts( $args );
foreach ($postslist as $post) : setup_postdata($post); ?>
<div class="events">
<p><strong><?php the_date(); ?></strong></p>
<p><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?

><?php the_content(); ?></a></p>
</div>
<?php endforeach; ?>
*******************************************************
[GET THE CODE HERE opens in new window as pure text]

 

2.
In the html code between body tags i put this where I want the posts to show.

******************************************
<!--#include virtual="ok.php" -->
******************************************
[GET THE CODE HERE opens in new window as pure text]

That was the way I did it and the result can be found on
the top of this page HERE!

OK
OK2

Free hosting & domain name. 1000MB and .com or .co.uk domain free for 1 year.
Limited time only. Check www.one.com for more details

  
Google

 

Gallery | D.I.Y | Reviews | Shop | Blog | Contact