Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up Try the site in https mode Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

  

Author Topic: Rotating Monitor with Hyperspin (servo based) Tutorial  (Read 27178 times)

0 Members and 1 Guest are viewing this topic.

Arroyo

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1558
  • Last login:Today at 11:53:53 am
  • Budgets are boring
    • newforum.arcadecontrols.com/index.php/topic,156267.0.html
Rotating Monitor with Hyperspin (servo based) Tutorial
« on: February 24, 2018, 12:01:29 pm »
Servo based Monitor rotation with Hyperspin (or any front end) Tutorial.

In my search for a rotating monitor tutorial with Hyperspin I found it difficult to locate anything that outlined the process.  But by piecing together information from posts on here I did manage it, but I thought it would be helpful to outline what I did for anyone trying to do the same thing.

This tutorial is for a Servo based rotating monitor, I have put in the information needed to make it work with Hyperspin, but if you are using another fronted like Mala there are other posts on here that will help you get the scripting portion completed (see DaOldMan's work). EDIT: Actually since you are using Rocketlauncher to make this work, you should be able to use any front end.

List of parts:

180degree Channel Gearbox Servo:
https://www.servocity.com/servos/servo-gearboxes/channel-gearboxes/standard-size-servo/180-max-rotation
I ordered the D645MW with the 5:1 leverage ratio, which depending on if you have them put it together runs $100-$130.

4 north and 2 south Neodymium magnets:
https://www.servocity.com/0-500-diameter-magnet-north
https://www.servocity.com/0-500-diameter-magnet-south
$6 total

A 1” “pillow block” bearing(may not be necessary, see below):
https://www.servocity.com/1-000-bore-quad-pillow-block
$10

1 Hub shaft spacer 3/4” length:
https://www.servocity.com/hub-spacers#355=186
$1.79

A 1.5” Aluminum Channel:
https://www.servocity.com/1-50-channel
$3

1 Pololu Micro Maestro Servo controller:
https://www.servocity.com/micro-maestro-6-channel-usb
$20

1 battery lead (12”):
https://www.servocity.com/12-0-heavy-duty-hitec-battery-lead
$2

1 22awg wire 2 conductor twisted 10’ length (don’t have to buy from here any wire will do)
https://www.servocity.com/22-awg-2-conductor-twisted-wire
$4

1 Monitor stand (not necessary, see below)
https://www.amazon.com/gp/aw/d/B002RL8J6C/ref=ya_aw_od_pi?ie=UTF8&psc=1
$73

1 VESA mounting plate:
https://www.amazon.com/gp/aw/d/B0036L5RJY/ref=ya_aw_od_pi?ie=UTF8&psc=1
$12

1 Monitor Arm extension bracket (not necessary, see below)
https://www.amazon.com/gp/aw/d/B00WJOYG6Y/ref=ya_aw_od_pi?ie=UTF8&psc=1
$15

1 DC-DC converter 12V down to 7.5V(may not be necessary):
https://www.amazon.com/gp/aw/d/B00FPGLGV6/ref=ya_aw_od_pi?ie=UTF8&psc=1
$7

Wheel weights (there are cheaper alternatives):
https://www.amazon.com/gp/aw/d/B06XDHXRT7?psc=1&ref=yo_pop_mb_pd
$20

1 Arcade power supply for 12V and 5V DC:
https://paradisearcadeshop.com/power-supplies/776-16a-min-dong-switching-power-supply-.html
$21

Lots of 6-32 screws of various lengths, with 6-32 nuts and #6 washers.

Depending on if you already have a power supply and how much work and how you design your rig, the cost can be as low as
$174 and as high as $316.

So here’s what I did after much trial and error and discovery:

There are few steps that I think are important no matter how you design your setup.

What size Monitor and aspect ratio are you going to use?
What are you going to use to drive it?
How will you attach the monitor to the motor?
How will you attach the motor to a sturdy structure?
How will you balance the monitor?(very important step, see more below)
What power supply and controller will you use?


I originally bought a Hi-Tec 755MG servo, it was listed as one of the strongest “large” servos. It ending up not being strong enough for my need at 200oz/inch (when using 6volts). I was turning a 30” 16:10 Monitor that weighs 17lbs, and was most definitely not balanced (see pics).

After much trial and error and searching I realized the root of my problems was that the Servo just wasn’t strong enough to smoothly power the system (read torque). I could get it to turn with the 755MG, however it was wobbly when turning slow, smooth when turning fast, but then because of the momentum of the monitor not strong enough to keep the monitor from over rotating when trying to hit a certain rotation positions (see videos below):



So what worked for me was doing the following:

The first thing you need to do is get your monitor balanced, this is a crucial step and can’t be emphasized enough.

I am working with the following structural components:

Monitor stand:

Monitor Arm Extension bracket:

Vesa Mounting plate:


Take your VESA Monitor plate (as seen above) and locate the center and drill a hole for center reference (it's very important that you get this as close to center as possible).



Line up the HUB shaft spacer and use double sided tape or some other method to attach the spacer around the center monitor. Use the holes (non threaded) as guides to drill the 4 holes you will need for mounting. I used 9/16 drill bit (EDIT: 9/64", WOW, sorry about that).  (I actually used a different hub shaft that had come with my previous purchase: https://www.servocity.com/servo-shaft-hub-500)


Should look something like this when done (you only need 4 holes):


Next drill a 1” hole (I used a 1" hole saw and lots of metal cutting lubricant, OK it was WD40 ;D) in your Monitor stand extension plate (you can easily just buy a piece of 16 gauge metal with the same dimensions and save some money, but you’ll have to drill more holes). AGAIN it is VERY important to get this as close to center as possible.  The hole should leave enough room that your Servo will have space above to mount. If you are following my exact setup then you will want to attach the monitor stand to the extension plate and leave enough room that the large silver gear in the Servo won’t hit the Monitor stand attachment.




Now that you have your 1” hole, drill 4 holes in the corners of your 1” “pillow block” bearing.


TWO THINGS ON THE ABOVE.

1.) Don't make the mistake that I did (nothing covering the bearing). Put tape over your bearing to prevent small bits of metal from getting in.
2.) Drill as close the corner as you can because you need to make sure the head of the screw will have space to fit.

Should look something like this:


Once that's done, line up your bearing with the hole and double side tape once it’s lined up and drill 4 holes into the monitor extension plate using the holes as guides (9/16 drill bit)(EDIT: 9/64", WOW, sorry about that). (ignore the 4 nuts and screws, we will get to that later)



Use screws and washers to attach the bearing:


Now you need to get the 1.5" Aluminum Channel mounted properly so that the servo can properly align with your bearing.  Screw the 180degree Servo into the Aluminum Channel as so (note that there are two screw holes and you will want to use the ones that put the servo furthest away from the channel face):


Grab your 3/4" hub shaft:

and align it with the Large Silver gear on the servo (but don't screw in yet as the screw heads will prevent you from feeding into the bearing)
Now place your servo with hub shaft and align so that you can now screw the hub shaft into the servo with the bearing being your guide:

(Again ignore the 4 screws and nuts, we will get to that later)

Now your servo should spin freely on around the bearing and it should be screwed to the 1.5" aluminum channel.  Here is where you will want to drill holes for the 1.5" aluminum channel into the monitor arm extension bracket.  Make sure that you have a good alignment so that the spacing of the aluminum channels even on both sides:


(Ignore lower half for now)

Now once you have the position you like tape down the aluminum channel as accurately as you can and unscrew the servo carefully so that you don't move the positioning of your aluminum channel.

(again ignore other holes and magnets as these were from the experimental first plate)

Drill holes in the outer most 4 corners.  Once done use your 6-32 screw and nuts to bolt down the 1.5" aluminum channel:



Now screw in your servo and put hub shaft through the bearing and screw down.  Congrats you've done all the drilling and hard work needed to get this:


(We'll get to those magnets in a bit)

Now that you have all of the drilling done the net part is crucial, BALANCING THE MONITOR:

Attach the monitor to the VESA mounting plate and the hub shaft:



The point here is to remove the Servo and simply have the monitor attached to the hub so that it can spin freely, this is an example of what it should NOT look like:



instead it should balance very easily like this:



Once you've got this step finished, you are 90% done with this project.  The physical components of this have been all but figured out.


This is where you will determine where to put and how many of the wheel weights as you want to balance the monitor so that it will come to a natural stop.  If you SKIP this step the servo will have to work hard to hit the targets and you will most likely get a bouncing monitor like I showed above.

Balancing the monitor in my opinion is probably the most important step as it will prevent a lot of problems down the road.

You will want to place the wheel weights so that they balance the monitor.  It can be somewhat intuitive as in my case where the monitor is clearly overweighted in one direction.  It may not be so obvious in your case but regardless it is likely to be overweighted as an example:

Note how the monitor naturally leans to the left, but with the wheel weights attached to the upper right hand corner it is balanced.

If you've got the above working well you are ready to put it all together.  Place the magnets in the 75mm (see the diagram of the VESA plate for details) slots.  Put the 4 screws (I believe they are 1") through the VESA mounting plate and the hub shaft like so:


then attach to the SERVO to get this:




Attach the magnets to the 75mm mounting holes on the bottom. Put the order of the magnets as 2 north (flipped) and one south (or visa versa), otherwise it may be too strong. Carefully screw the magnets in as you can over tighten and break the magnets.
It should now look like this:


Attach the VESA plate to the Hub shaft:




Here's a view of the Servo in action (towards the end):




Download and install the Servo control center from Pololu.
https://www.pololu.com/docs/0J40/3.a

The motor that we have selected runs at 7.4 volts, so you will want to use the DC-DC converter to bring the voltage down from 12V to 7.5V.

This connects to the 12V power supply and then to the motor.

Connect your power supply to Micro Maestro on the pins that say "bat" on the back:



Now connect the USB from Micro Maestro to the computer

You will want to learn how the Control Center works (I'd follow their tutorial's).

The bottom line is you will set target positions (this is a fancy way of saying what degree do you want the motor to turn).

With the Control Center you will want to define the the minimum and maximum position (in micro seconds, look on the ServoCity Website for this info).  This tells the computer what the maximum rotation is allowed for the servo.

Form there you will want to play around with the position targets to find the vertical and horizontal position that work for you (NOTE, VERY IMPORTANT.  The direction you turn can really affect the outcome, try to see if one direction works EASIER than the other to spin).  This may sound funny as the monitor is balanced, but it can make a big difference on how much wobble you get when it reaches the position.

Once you have your target positions for vertical and horizontal you will want to under the "Sequence tab" hit the "copy all sequence to to script".  Then on the Script tab you will see:


Take note of the positions (i have one highlighted in the picture, in my case it was 5699 and 9245).  You will want to write those down as we will add this to our script later on.

Now to the software part (we are getting close to done, I promise).  You will want to edit your Mame.ahk file in Rocket launcher (If you haven't got Rocket launcher installed you will want to read up on how it works).  The Mame.ahk file is located either through the GUI or through file explorer:


Open with your preferred editor HOWEVER I would highly recommend saving a back up first (you can see I did in mine called MAME Original).  Once you've opened up the editor you will want to add this line that I have highlighted the first is near the beginning, and the second is at the very end:



The code lines if you'd like to copy paste are:
Code: [Select]
Runwait, %emupath%\Rotation.exe "%romName%"
process, waitclose, %executable%
Runwait, %emupath%\Rotation.exe "reset"
Now you need to edit the attached file in this post called "Rotation2.txt".  You need to rename this to Rotation.ahk (website won't allow you to upload a file ending in AHK).  Also take the file named Rotation.txt and rename it to Rotation.ini.

The following is a copy from DNA Dan's post (the guy who got this all working). I have modified the code to fit a servo motor:

Next you need to add two files (Rotation.ini, and Rotation.ahk) to you MAME root folder. The first one is a list of vertical games. The other is the Rotation.ahk which contains the code to send commands to USCCMD (Servo) depending upon the list.

Open the Rotation.ini text file. Any game you want on a vertical rotation needs to go in the line "Set2_vertical=" single line followed by a comma. If someone knows how to do this easily, please let me know. I don't want to type that all out! This file goes in your MAME root folder.

Code: [Select]
: [Select]
[Controls]
PrevState=horizontal
Set2_vertical=005,progolf,1941j,1941,1942,1942b (etc. Add all vertical ROM games here followed by a comma.)

Finally you need to add the Rotation.ahk to your MAME root folder. This one needs some editing. The line that reads "iniwrite, vertical, C:\arcade\mame\Rotation.ini, controls, PrevState" - you need to change the directory to your setup. This needs to point to Rotation.ini. Same thing for the line that reads "iniwrite, horizontal, C:\arcade\mame\Rotation.ini, controls, PrevState " If you read the code, you'll notice I am using --speed 25. You might want to start this off slower to make sure it works on your setup before rotating at this speed. Once you are done editing, you need to compile this to an .exe in the same location.

Code: [Select]
;[Rotation.exe]
;
;
#SingleInstance force

romName = %1%
If ((romName = "ace") | (romName = "maze") | (romName = "bang") | (romName = "batman") | (romName = "blasto") | (romName = "bullfgt") | (romName = "cannball") | (romName = "circus") | (romName = "combat") | (romName = "cotton") | (romName = "smash") | (romName = "dday") | (romName = "zero") | (romName = "edf") | (romName = "esb") | (romName = "flyball") | (romName = "gaia") | (romName = "galaxi") | (romName = "gng") | (romName = "grdnstrm") | (romName = "headon") | (romName = "car2") | (romName = "hustle") | (romName = "island") | (romName = "island2") | (romName = "joust") | (romName = "eto") | (romName = "le2") | (romName = "msh") | (romName = "mk") | (romName = "mk2") | (romName = "news") | (romName = "orbit") | (romName = "pass") | (romName = "pgm") | (romName = "phrcraze") | (romName = "popeye") | (romName = "kok") | (romName = "spy") | (romName = "safari") | (romName = "sonic") | (romName = "skyraid") | (romName = "sss") | (romName = "sf") | (romName = "roul") | (romName = "jleague") | (romName = "atetris") | (romName = "tetris") | (romName = "tictac") | (romName = "toki") | (romName = "tm") | (romName = "statriv2") | (romName = "vf") | (romName = "vr") | (romName = "topgun") | (romName = "ws"))
{
goto horizontalrotation
}
param := "%romName%"
;reads verticalRoms controlled roms list
IniRead, verticalRoms, %A_ScriptDir%\Rotation.ini, controls, Set2_vertical
;reads state of vertical, horizontal rotation (user added line in "controls.ini")
iniread, state, %a_scriptdir%\Rotation.ini, Controls, PrevState
ifnotinstring, verticalRoms, %romname%, gosub, horizontalrotation

verticalrotation:
if ( State = "vertical")
{
exitapp
}
else if ( State = "horizontal")
{
RunWait, %COMSPEC% /c "usccmd --speed 0`,25", ,{enter},hide  (CHANGE your desired speed from 25 to the one you like)
Run, %COMSPEC% /c "usccmd --servo 0`,9378", ,{enter},hide  (CHANGE the position from 9378 to your position)
iniwrite, vertical, C:\Hyperspin\Emulators\Mame\Rotation.ini, controls, PrevState  (CHANGE THIS)
exitapp
}

horizontalrotation:
if ( State = "horizontal" )
{
exitapp
}
else if ( State = "vertical")
{
RunWait, %COMSPEC% /c "usccmd --speed 0`,25", ,{enter},hide (CHANGE your desired speed from 25 to the one you like)
Run, %COMSPEC% /c "usccmd --servo 0`,5815", ,{enter},hide  (CHANGE the position from 5815 to your position)
iniwrite, horizontal, C:\Hyperspin\Emulators\Mame\Rotation.ini, controls, PrevState  (CHANGE THIS TO YOUR LOCATION)
exitapp
}

You will want to edit the location of where the two files will be (You should put them in your MAME root folder).  You will also want to change the position (see above).  You also may want to change the speed and where it says: servo 0' you will want make sure this is the slot on the Micro Maestro that you have plugged your servo into (in the pictures above mine is actually plugged into the 1 slot, so my code on mine actually says: servo 1').

Now that you have made those edits put the files into the folder location that you specified above.  Right click on Rotation.ahk and compile it so that it becomes Roation.exe.

Run Hyperspin and launch a vertical game and your monitor should rotate, and then rotate back to horizontal when you exit.

Here’s mine running:







 :cheers:
« Last Edit: November 04, 2019, 03:31:32 pm by Arroyo »

DaOld Man

  • Moderator
  • Trade Count: (+4)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 5139
  • Last login:December 13, 2023, 12:03:14 am
  • Wheres my coffee?
    • Skenny's Outpost
Re: Rotating Monitor with Hyperspin (servo based)
« Reply #1 on: February 26, 2018, 07:54:01 pm »
Good work, and a good writeup. Thanks!!

gumpie

  • Trade Count: (0)
  • Jr. Member
  • **
  • Offline Offline
  • Posts: 8
  • Last login:November 22, 2018, 12:32:36 pm
Re: Rotating Monitor with Hyperspin (servo based)
« Reply #2 on: October 20, 2018, 11:04:51 am »
Whoo finally a complete overview of how to rotate a monitor,
Complete with instructions, I've been looking for this for a long time,
Built a Small Fully Working Arcade machine a few years ago.
But unfortunately the rotation still goes with a switch on the back.
Now look if I can use something from this method and whether it works with my
Structure.

Great tutorial  :applaud: :applaud: :applaud: :applaud:

Arroyo

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1558
  • Last login:Today at 11:53:53 am
  • Budgets are boring
    • newforum.arcadecontrols.com/index.php/topic,156267.0.html
Re: Rotating Monitor with Hyperspin (servo based)
« Reply #3 on: October 20, 2018, 04:33:26 pm »
Great tutorial  :applaud: :applaud: :applaud: :applaud:

Let me know if you need help :cheers:

gumpie

  • Trade Count: (0)
  • Jr. Member
  • **
  • Offline Offline
  • Posts: 8
  • Last login:November 22, 2018, 12:32:36 pm
Re: Rotating Monitor with Hyperspin (servo based)
« Reply #4 on: November 21, 2018, 03:16:01 pm »
Great tutorial  :applaud: :applaud: :applaud: :applaud:

Let me know if you need help :cheers:

I will when needed, first need to buy this pcb for the servo, when a deside to, is that it and possable? :applaud:.
i'l show you my schematic verry oldscool.
« Last Edit: November 21, 2018, 06:40:55 pm by gumpie »

gumpie

  • Trade Count: (0)
  • Jr. Member
  • **
  • Offline Offline
  • Posts: 8
  • Last login:November 22, 2018, 12:32:36 pm
Re: Rotating Monitor with Hyperspin (servo based)
« Reply #5 on: November 21, 2018, 03:26:18 pm »
By the way this is my HomeMade scaled Arcade.  ;D
Even the screen can tilt

« Last Edit: November 21, 2018, 03:29:44 pm by gumpie »

Arroyo

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1558
  • Last login:Today at 11:53:53 am
  • Budgets are boring
    • newforum.arcadecontrols.com/index.php/topic,156267.0.html
Re: Rotating Monitor with Hyperspin (servo based)
« Reply #6 on: November 22, 2018, 08:50:03 am »
Great tutorial  :applaud: :applaud: :applaud: :applaud:

Let me know if you need help :cheers:

I will when needed, first need to buy this pcb for the servo, when a deside to, is that it and possable? :applaud:.
i'l show you my schematic verry oldscool.


That looks like it could work for stop positions. You will still need a Pololu controller to control the servo directions, speed, etc.

Arroyo

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1558
  • Last login:Today at 11:53:53 am
  • Budgets are boring
    • newforum.arcadecontrols.com/index.php/topic,156267.0.html
Re: Rotating Monitor with Hyperspin (servo based)
« Reply #7 on: November 22, 2018, 08:51:30 am »
By the way this is my HomeMade scaled Arcade.  ;D
Even the screen can tilt


That’s interesting, haven’t seen that before.  How do you have two different bezels around the screen, is that one big screen with dynamic bezels, or shot from two different time periods?

gumpie

  • Trade Count: (0)
  • Jr. Member
  • **
  • Offline Offline
  • Posts: 8
  • Last login:November 22, 2018, 12:32:36 pm
Re: Rotating Monitor with Hyperspin (servo based)
« Reply #8 on: November 22, 2018, 11:37:56 am »
By the way this is my HomeMade scaled Arcade.  ;D
Even the screen can tilt


That’s interesting, haven’t seen that before.  How do you have two different bezels around the screen, is that one big screen with dynamic bezels, or shot from two different time periods?


Yes these are made in two different time period , these (paper)bezel is sandwitched between two layers of 2mm plexi glass and glued to together with a stroke of 2,3mm plexi glass like picture

gumpie

  • Trade Count: (0)
  • Jr. Member
  • **
  • Offline Offline
  • Posts: 8
  • Last login:November 22, 2018, 12:32:36 pm
Re: Rotating Monitor with Hyperspin (servo based)
« Reply #9 on: November 22, 2018, 11:44:03 am »
Great tutorial  :applaud: :applaud: :applaud: :applaud:

Let me know if you need help :cheers:

I will when needed, first need to buy this pcb for the servo, when a deside to, is that it and possable? :applaud:.
i'l show you my schematic verry oldscool.


That looks like it could work for stop positions. You will still need a Pololu controller to control the servo directions, speed, etc.

Yes indeed for automatic rotation i need something like pololu ctr.
but now it's done manual, with a switch and two potentiometers these are controlling the 555 timer.

Arroyo

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1558
  • Last login:Today at 11:53:53 am
  • Budgets are boring
    • newforum.arcadecontrols.com/index.php/topic,156267.0.html
Re: Rotating Monitor with Hyperspin (servo based)
« Reply #10 on: November 22, 2018, 11:47:59 am »
Great tutorial  :applaud: :applaud: :applaud: :applaud:

Let me know if you need help :cheers:

I will when needed, first need to buy this pcb for the servo, when a deside to, is that it and possable? :applaud:.
i'l show you my schematic verry oldscool.


That looks like it could work for stop positions. You will still need a Pololu controller to control the servo directions, speed, etc.

Yes indeed for automatic rotation i need something like pololu ctr.
but now it's done manual, with a switch and two potentiometers these are controlling the 555 timer.

Ah I didn’t understand, I thought this was what you are planning on doing, not what you have already done.

gumpie

  • Trade Count: (0)
  • Jr. Member
  • **
  • Offline Offline
  • Posts: 8
  • Last login:November 22, 2018, 12:32:36 pm
Re: Rotating Monitor with Hyperspin (servo based)
« Reply #11 on: November 22, 2018, 12:32:36 pm »

Right now it works , only i was searching to make it goes automatic when the screen change,
and the way you make it is very clearly.
You made a Greate tutorial  :cheers:

ishibu

  • Trade Count: (0)
  • Jr. Member
  • **
  • Offline Offline
  • Posts: 3
  • Last login:October 06, 2019, 03:04:56 pm
  • I want to build my own arcade controls!
Re: Rotating Monitor with Hyperspin (servo based)
« Reply #12 on: September 07, 2019, 06:03:35 am »
Wonderful tutorial!  :applaud: I just find the D645MW a bit expensive (mounted, etc.) but the alternatives are immediately more complex to set up...

I have just one question: what are the magnets for? They serve to help the screen to stop at the right place without bouncing?

Thanks !

Arroyo

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1558
  • Last login:Today at 11:53:53 am
  • Budgets are boring
    • newforum.arcadecontrols.com/index.php/topic,156267.0.html
Re: Rotating Monitor with Hyperspin (servo based)
« Reply #13 on: September 09, 2019, 12:27:49 pm »
Wonderful tutorial!  :applaud: I just find the D645MW a bit expensive (mounted, etc.) but the alternatives are immediately more complex to set up...

I have just one question: what are the magnets for? They serve to help the screen to stop at the right place without bouncing?

Thanks !

Sorry I was busy all weekend.  Yes they do two things, act as a support for the weight of the monitor, and help to slow and eventually stop rotation more accurately.

The monitor is heavy enough that it kinda wants to bow the two plates down so that they are no longer parallel.  The magnets support the panel closest to the screen so that the two plates stay in parallel. 

The servo actually does have targets that you set to dictate where it will stop, but if you move really fast then when the servo tries to stop, the momentum of the monitor wants to keep going, so the magnets help to slow the servo down as it gets close to it's target (end position), and helps to keep it in place so that the servo isn't expending energy to maintain the position.

Hopefully this makes sense, it's kind of hard to describe.
« Last Edit: October 04, 2019, 11:05:42 am by Arroyo »

ishibu

  • Trade Count: (0)
  • Jr. Member
  • **
  • Offline Offline
  • Posts: 3
  • Last login:October 06, 2019, 03:04:56 pm
  • I want to build my own arcade controls!
Re: Rotating Monitor with Hyperspin (servo based) Tutorial
« Reply #14 on: October 06, 2019, 04:08:55 am »
Thanks, I understand :)

I found a 32" TV, the weight seems OK to try your tutorial ; but I have a little problem I think, the VESA holes on the TV back are not centered...

They are OK horizontally, but vertically, I have :
19 cm - first hole - 10 cm - second hole - 14 cm

So, when the screen will flip vertically, it will be more on the right (or left) but not centered... Any way to resolve that ? It's a 200x100 VESA, I can find a plate with these dimensions, but how make it centered when it rotates ?

Thanks !

Arroyo

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1558
  • Last login:Today at 11:53:53 am
  • Budgets are boring
    • newforum.arcadecontrols.com/index.php/topic,156267.0.html
Re: Rotating Monitor with Hyperspin (servo based) Tutorial
« Reply #15 on: October 06, 2019, 08:34:55 am »
I can find a plate with these dimensions, but how make it centered when it rotates ?

Yes you can do it, it just involves more work and measuring.  What you have to do is change your mounting point on the VESA plate from center, as pictured in this image:



And instead offset it in the direction (vertically you said) so that the rotation point is the center of the screen.

So in other words you will mount the VESA normally, but the hub shaft spacer, as seen here in silver:



will be shifted vertically to offset the vertical misalignment of the TV mounting points.  That way the rotation point is the center of your screen.

Does that make sense?

ishibu

  • Trade Count: (0)
  • Jr. Member
  • **
  • Offline Offline
  • Posts: 3
  • Last login:October 06, 2019, 03:04:56 pm
  • I want to build my own arcade controls!
Re: Rotating Monitor with Hyperspin (servo based) Tutorial
« Reply #16 on: October 06, 2019, 03:00:35 pm »
Yep that makes sense, thanks ! I will try this :)

Ow, just a last question about the servo ; the model used is the "CM-D645MW-180 Servo Gearbox", but I have to take the stock rotation (90°) and not the max rotation (180°), yep ?
« Last Edit: October 06, 2019, 03:04:56 pm by ishibu »

Arroyo

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1558
  • Last login:Today at 11:53:53 am
  • Budgets are boring
    • newforum.arcadecontrols.com/index.php/topic,156267.0.html
Re: Rotating Monitor with Hyperspin (servo based) Tutorial
« Reply #17 on: October 07, 2019, 12:39:01 pm »
Yep that makes sense, thanks ! I will try this :)

Ow, just a last question about the servo ; the model used is the "CM-D645MW-180 Servo Gearbox", but I have to take the stock rotation (90°) and not the max rotation (180°), yep ?

Sorry, was a busy day yesterday.  I had to look that up on my order as I didn't recall off memory.  According to my order I ordered stock rotation, however I thought I remembered being able to rotate it beyond 90 degrees.....hhhmmmm.  Best bet would be to call the folks at Servocity and ask (they are very helpful).  Just tell them you need to make a 90 degree turn, but it would probably be preferable to have some flexibility to go beyond 90.  I'd test it at home but it isn't hooked up at the moment, as I'm mostly focused on wood working for my project.  I will hopefully be playing with it in the next month or two once I can clear space.  I could let you know then for sure, but I'm sure you don't want to wait that long.
« Last Edit: October 22, 2019, 10:49:49 am by Arroyo »