1

When you open the tray of a CDROM drive and push back against the tray, it will close at a certain point. Also, when the tray is opened completely, you can close it by pushing back against the tray.

I've taken apart several CDROM drives by now, but I've never found any sort of mechanism that senses whether or not someone presses against the tray. Perhaps I missed it.

Can somebody tell me what kind of sensor or circuitry (if any) is used for this?

JRE
  • 67,678
  • 8
  • 104
  • 179
Joe
  • 37
  • 5
  • Tray motor back EMF? – Antonio51 Sep 20 '22 at 11:42
  • That could be a possible way to sense it, @Justme has already posted an answer explaining about the switches I've obviously missed... Perhaps the motor back EMF is used to sense a blocked tray? – Joe Sep 20 '22 at 11:57
  • @Joe Sensing back-EMF is unlikely the cheapest way of doing it as there are likely cheaper ways of doing it. – Justme Sep 20 '22 at 12:01
  • @Justme I see, and I've also read your other comment on the timing between switches, I think I understand it now. And I can also see how it would be a lot cheaper to just time the movement between switches. – Joe Sep 20 '22 at 12:06
  • The ones I’ve seen have a flexure molded into the plastic that activates a microswitch, thus sensing the force. Dead cd players are dime a dozen, grab a couple and pull them apart. You might be surprised with what you learn. – Kartman Sep 20 '22 at 12:46
  • A current-sense resistor that monitor's the motor current may be another way (replacing mechanical switch sensors). When the motor stalls upon hitting the end-stops, motor current increases dramatically - causing the current-sense resistor to signal a "stop-the motor!" flag. A resistor+amplifier is cheaper than switches. – glen_geek Sep 20 '22 at 14:00
  • Change in current: https://electronics.stackexchange.com/questions/274721/how-does-blocking-a-servo-dc-motor-break-it/274724#274724 – RemyHx Sep 20 '22 at 14:00

1 Answers1

2

There is usually a switch or a set of switches that sense when tray is fully open and fully closed.

When you push the eject button, the tray motor moves the tray out until the switch determines it is fully ejected so the motor stops.

If you push the tray a bit in the switch determines that it's not fully open any more so motor starts loading the tray in, and stops when switch indicates that the tray is fully closed.

There may be other mechanisms too.

Justme
  • 127,425
  • 3
  • 97
  • 261
  • I see, that would indeed explain it... but I don't think it explains why, when you block a tray mid-way, it retracts? Do you know of another mechanism that senses that? Could it be motor back EMF as @Antonio51 stated in his comment? Thanks for your quick anwser by the way!! – Joe Sep 20 '22 at 11:55
  • Why it does not explain it? If it takes too long for the switch to signal that tray is fully out, the drive can do whatever it wishes, either start pulling the tray in or stop trying to moving it. – Justme Sep 20 '22 at 11:58
  • Oh, wow... I hadn't even thought about the possibility of timing the event between the two switches, but that does indeed make a lot of sense! And it also explains why you can block a tray, feel some resistance for a short while, after which the tray retracts. Thanks again!! – Joe Sep 20 '22 at 12:05
  • @Joe It's also very easy to detect if a motor is stalled by sensing that the current skyrockets. A sensible motor driver IC would disconnect the motor under those conditions to avoid damage and then signal a fault, which other parts of the system can then respond to however they want. – Hearth Sep 21 '22 at 15:15