{"id":22,"date":"2015-01-25T20:33:00","date_gmt":"2015-01-25T20:33:00","guid":{"rendered":""},"modified":"2023-01-07T19:33:42","modified_gmt":"2023-01-07T19:33:42","slug":"back-emf","status":"publish","type":"post","link":"https:\/\/blog.hslracing.com\/3dprinters\/2015\/01\/back-emf.html","title":{"rendered":"Back EMF"},"content":{"rendered":"<p>I have been having issues with my printer for quite a while now &#8211; at some random point it will skip a step and cause the print to shift over to the left or right by about the width of the extruded filament.<\/p>\n<div style=\"clear: both; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-198\" src=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Kossel-Top-bad-300x253.jpg\" alt=\"\" width=\"300\" height=\"253\" srcset=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Kossel-Top-bad-300x253.jpg 300w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Kossel-Top-bad-768x647.jpg 768w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Kossel-Top-bad.jpg 800w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/div>\n<p>This could happen several times during a tall print and result in a slightly wavy appearance to the outside of the printed part.<\/p>\n<p>Not necessarily an issue for items where a perfect edge is not required, however a major issue if that perfect edge is required for lining up against some other item, or for a rod or similar to pass through a hole.<\/p>\n<p>The skipped step is totally random and can occur after 1, 10 or 30 layers, and again randomly after that, sometimes continuing in the same direction, other times correcting the previous skipped step.<\/p>\n<p>I am pretty sure it is not the steppers over heating, nor is it a function of an out of square printer as it is even random when repeating the same print &#8211; no 2 prints have the skips in the same place.<\/p>\n<p>One thing that does seem consistent is that it seems to happen after a particularly noisy switch off of the relay controlling the heated bed.<\/p>\n<p>This led me to think that it was possibly back EMF from the collapse of the relay circuit hitting the controller board and causing a skipped step &#8211; not enough to reset the board, but enough to cause problems.<\/p>\n<p>I have tried printing with the heated bed switched off and the issue appears to go away, thereby lending credibility to the theory.<\/p>\n<p>Unfortunately printing with the heated bed switched off on taller prints leads to the print being pulled off the bed.<\/p>\n<p>I was already using a flyback diode, however, it is suggested <a href=\"http:\/\/www.repeater-builder.com\/tech-info\/pdfs\/relay-coil-suppression.pdf\">here<\/a> that there are better ways of reducing the back EMF by additionally using a resistor or a zener diode.<\/p>\n<div style=\"clear: both; text-align: center;\"><a href=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/backEMF.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-199 size-medium\" src=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/backEMF-300x187.png\" alt=\"\" width=\"300\" height=\"187\" srcset=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/backEMF-300x187.png 300w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/backEMF.png 600w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/div>\n<p>I found a suitable zener diode and updated my relay wiring, unfortunately this had no additional benefit.<\/p>\n<p>So the conundrum remained &#8211; print with the heated bed switched on and have issues with prints over 10mm tall, or print with the heated bed switched off and have them pulled off the heated bed at about 12mm tall.<\/p>\n<p>Neither option was really viable from my point of view, so I came up with a couple of alternatives:<\/p>\n<ul>\n<li>Use a frosted piece of acrylic as a bed<\/li>\n<li>Use a separate controller for the heated bed<\/li>\n<li>Use a separate controller and separate power supply for the heated bed.<\/li>\n<\/ul>\n<p>The frosted acrylic method is what I intend to use on my delta printer, however if I ever want to print with ABS, I will need to fix the heated bed, so I started down the road of a separate controller.<\/p>\n<p>At first I thought I would use something along the lines of this <a href=\"http:\/\/www.thingiverse.com\/thing:45268\">Thing<\/a>, however I thought it was way to expensive and over complicated.<\/p>\n<div style=\"clear: both; text-align: center;\"><a href=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/heated-2Bbed.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-200 size-medium\" src=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/heated-2Bbed-300x225.jpg\" alt=\"\" width=\"300\" height=\"225\" srcset=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/heated-2Bbed-300x225.jpg 300w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/heated-2Bbed.jpg 690w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/div>\n<p>Most of the parts could be scaled back and I could use an\u00a0<a href=\"https:\/\/www.google.co.uk\/url?sa=t&amp;rct=j&amp;q=&amp;esrc=s&amp;source=web&amp;cd=1&amp;cad=rja&amp;ved=0CEAQFjAA&amp;url=http%3A%2F%2Fwww.atmel.com%2FImages%2Fdoc8006.pdf&amp;ei=O2BhUqb7JcSW0AX644CADw&amp;usg=AFQjCNHLPIeVGSvAvaxKo6epqNxfpUNFlA&amp;sig2=EVMdtyDe44DbDVEWIt04yQ&amp;bvm=bv.54176721,d.d2k\">ATtiny44<\/a>\u00a0rather than a full blown <a href=\"http:\/\/arduino.cc\/en\/Main\/ArduinoBoardUno\">Arduino Uno<\/a> plus shield.<\/p>\n<p>I designed a suitable schematic and board in <a href=\"http:\/\/thingiverse-production.s3.amazonaws.com\/renders\/b3\/30\/cb\/84\/5f\/IMG_6087_preview_featured.jpg\">Eagle<\/a>\u00a0and set about obtaining suitable snippets of code to write the control software.<\/p>\n<div style=\"clear: both; text-align: center;\"><a href=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.29.49.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-202 size-medium\" src=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.29.49-285x300.png\" alt=\"\" width=\"285\" height=\"300\" srcset=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.29.49-285x300.png 285w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.29.49.png 736w\" sizes=\"auto, (max-width: 285px) 100vw, 285px\" \/><\/a><\/div>\n<p>&nbsp;<\/p>\n<div style=\"clear: both; text-align: center;\"><a href=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.29.37.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-201 size-medium\" src=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.29.37-300x217.png\" alt=\"\" width=\"300\" height=\"217\" srcset=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.29.37-300x217.png 300w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.29.37-768x555.png 768w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.29.37.png 905w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/div>\n<p>After talking this through with a few different people, one suggested a 555 timer circuit to do it all in hardware, so I thought &#8211; hey why not give that a go.<\/p>\n<div style=\"clear: both; text-align: center;\"><a href=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.36.30.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-204 size-medium\" src=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.36.30-297x300.png\" alt=\"\" width=\"297\" height=\"300\" srcset=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.36.30-297x300.png 297w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.36.30.png 754w\" sizes=\"auto, (max-width: 297px) 100vw, 297px\" \/><\/a><\/div>\n<p>&nbsp;<\/p>\n<div style=\"clear: both; text-align: center;\"><a href=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.36.16.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-203 size-medium\" src=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.36.16-300x235.png\" alt=\"\" width=\"300\" height=\"235\" srcset=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.36.16-300x235.png 300w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.36.16.png 748w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/div>\n<p>Ideally I would require a transistor or better yet a <a href=\"http:\/\/en.wikipedia.org\/wiki\/MOSFET\">MOSFET<\/a> to trigger the relay, at which point it occurred to me that I could actually do away with the 555 chip as well and simply use the thermistor and variable resistor as a <a href=\"http:\/\/en.wikipedia.org\/wiki\/Voltage_divider\">voltage divider<\/a> to trigger the\u00a0<a href=\"http:\/\/en.wikipedia.org\/wiki\/MOSFET\">MOSFET<\/a>\u00a0directly.<\/p>\n<p>There are 2 variations of this circuit, one for heating and one for cooling depending on which item is closest to the supply voltage and which is closest to ground.<\/p>\n<p>I wanted one for heating, so the thermistor goes at the top.<\/p>\n<div style=\"clear: both; text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-206\" src=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.46.11-300x281.png\" alt=\"\" width=\"300\" height=\"281\" srcset=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.46.11-300x281.png 300w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.46.11-768x718.png 768w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.46.11.png 832w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/div>\n<p>&nbsp;<\/p>\n<div style=\"clear: both; text-align: center;\"><a href=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.46.02.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-205 size-medium\" src=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.46.02-300x273.png\" alt=\"\" width=\"300\" height=\"273\" srcset=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.46.02-300x273.png 300w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B14.46.02.png 712w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/div>\n<p>The same board shown on a small piece of perfboard.<\/p>\n<div style=\"clear: both; text-align: center;\"><\/div>\n<div style=\"clear: both; text-align: center;\"><\/div>\n<div style=\"clear: both; text-align: center;\"><a href=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B15.16.32.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-207 size-medium\" src=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B15.16.32-300x209.png\" alt=\"\" width=\"300\" height=\"209\" srcset=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B15.16.32-300x209.png 300w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Screen-2BShot-2B2015-01-25-2Bat-2B15.16.32.png 480w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/div>\n<p>Next one needs to select a suitable value for the variable resistor based on the trigger value of the\u00a0<a href=\"http:\/\/en.wikipedia.org\/wiki\/MOSFET\">MOSFET<\/a>\u00a0and\u00a0the required temperature on the heated bed thermistor.<\/p>\n<p>I am using a Semitec 104GT thermistor and the various temperature\/resistance values can be found in the associated <a href=\"http:\/\/www.rapidonline.com\/pdf\/61-0452.pdf\">datasheet<\/a>.<\/p>\n<p>The various formulas for calculating R1, R2, Vin or Vout are all on the <a href=\"http:\/\/en.wikipedia.org\/wiki\/Voltage_divider\">Wikipedia page<\/a>, I simply plugged them into a spreadsheet along with a lookup table for the thermistor temperature\/resistance values to work out values where the\u00a0<a href=\"http:\/\/en.wikipedia.org\/wiki\/MOSFET\">MOSFET<\/a>\u00a0would come on at room temperature and switch off at about 60C.<\/p>\n<p>Using a supply voltage (Vin) of 12V, trigger voltage (Vout) of 2V which is pretty standard for a\u00a0<a href=\"http:\/\/en.wikipedia.org\/wiki\/MOSFET\">MOSFET\u00a0<\/a>\u00a0and thermistor resistance (R1) of 22.51K Ohms at 60C, gave a variable resistor setting (R2) of 112.55K Ohms, this in turn would have a Vout of 2.75V at 50C and 1.44V at 70C, so about the right range.<\/p>\n<p>In practice whilst the\u00a0<a href=\"http:\/\/en.wikipedia.org\/wiki\/MOSFET\">MOSFET<\/a>\u00a0triggers at 2V, the gate is not really open or close until around 3V (see the <a href=\"http:\/\/www.rapidonline.com\/pdf\/47-0207.pdf\">datasheet<\/a>) and as such the bed was still too cold as it was shutting off at about 40-45C.<\/p>\n<p>I adjusted the calculations using this new 3V Vout value and came up with a new resistor value of 67.53K Ohms at 60C, which gave Vout of 3.98V at 50C and 2.23V at 70C.<\/p>\n<p>This had the desired effect of reaching somewhere near the correct temperature as a side comment the relay turns itself on and off in a much more gentle manner as the voltage change is much slower than the previous strict on\/off method.<\/p>\n<p>As a result of the lower resistor values for R2, I could have used a 100K Ohm variable resistor as opposed to the 200K Ohm one I thought I needed initially based on an R2 value of 112K.<\/p>\n<p>Should I decide to print with ABS and set the bed to 110C, the resistor would need adjusting to 12.24K Ohms, the Vout at 100C would then be 3.75V and at 120C would be 2.39V.<\/p>\n<p>In total just a couple of components and half a small perf board for a total of just over \u00a31.50 including all of the connectors (which could all have been left as pin headers to save about \u00a30.50).<\/p>\n<p>The board is currently powered directly from the 12V power supply, so the heated bed is active whenever the printer is powered up, I may yet connect it through its own switch so it can be turned on and off independently.<\/p>\n<p>Here are the front<\/p>\n<div style=\"clear: both; text-align: center;\"><a href=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/bed-ctrl1.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-208 size-medium\" src=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/bed-ctrl1-300x232.jpg\" alt=\"\" width=\"300\" height=\"232\" srcset=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/bed-ctrl1-300x232.jpg 300w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/bed-ctrl1-768x594.jpg 768w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/bed-ctrl1.jpg 800w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/div>\n<p>and rear views of the completed board<\/p>\n<div style=\"clear: both; text-align: center;\"><a href=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/bed-ctrl2.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-209 size-medium\" src=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/bed-ctrl2-300x237.jpg\" alt=\"\" width=\"300\" height=\"237\" srcset=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/bed-ctrl2-300x237.jpg 300w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/bed-ctrl2-768x608.jpg 768w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/bed-ctrl2.jpg 800w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/div>\n<p>The copper wire is 4 sections cut from a single core of CAT5 network cable, only the last of which still has its insulation in place.<\/p>\n<p>I have both pin header and screw terminal connections for power, the thermistor and heated bed connections are wired exactly the same as for connecting to the <a href=\"http:\/\/reprap.org\/wiki\/Sanguinololu\">Sanguinololu<\/a>.<\/p>\n<p>My next print came out perfectly with no skipped steps whatsoever, and was not pulled from the bed.<\/p>\n<div style=\"clear: both; text-align: center;\"><a href=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Kossel-Top.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-210 size-medium\" src=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Kossel-Top-300x239.jpg\" alt=\"\" width=\"300\" height=\"239\" srcset=\"https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Kossel-Top-300x239.jpg 300w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Kossel-Top-768x612.jpg 768w, https:\/\/blog.hslracing.com\/wp-content\/uploads\/sites\/5\/2015\/01\/Kossel-Top.jpg 800w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/div>\n","protected":false},"excerpt":{"rendered":"<p>I have been having issues with my printer for quite a while now &#8211; at some random point it will skip a step and cause the print to shift over to the left or right by about the width of the extruded filament. This could happen several times during a tall print and result in&hellip;<\/p>\n","protected":false},"author":1,"featured_media":198,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-22","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorised"],"_links":{"self":[{"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/posts\/22","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/comments?post=22"}],"version-history":[{"count":3,"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/posts\/22\/revisions"}],"predecessor-version":[{"id":288,"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/posts\/22\/revisions\/288"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/media\/198"}],"wp:attachment":[{"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/media?parent=22"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/categories?post=22"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.hslracing.com\/3dprinters\/wp-json\/wp\/v2\/tags?post=22"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}