Schrijver
| Controling motor from msx
|
pauloall msx friend Berichten: 3 | Geplaatst: 20 Februari 2008, 03:45   |
Hello, Iam looking for informations about motor control from MSX. The objective is to control a telescope motor from it. Is it possible to do it from the joystick port ? Please give me some light !! Is it possible to do it with basic programing ?
Where from should I begin to put it to work ?!!!
Thanks alot!
|
|
Yukio msx professional Berichten: 778 | Geplaatst: 20 Februari 2008, 04:11   |
If you look into old numbers from Saber Electrônica, there is some projects about controlling Robots with Parallel port. It should be theoretically possible to use the Joystick port for similar process ...
In the case of the Parallel port, I think that it is possible to use OUT to output the instructions for the motors . There was BASIC programs to demonstrate this.
Sending one byte it could be used to control until 8 devices (each of them using one bit).
The byte has this format:
xxxxxxxx
If you use 0 the motor is off, if you use 1 the motor should be on!
There is already some posts about using the joystick port to connect the MSX to one "RS-232C" port, if someone knew how to program serial data ...
|
|
pauloall msx friend Berichten: 3 | Geplaatst: 20 Februari 2008, 06:37   |
humm, ok . thanks Yukio. As a beginner let me see if I understand: if I connect a RS232C I could connect direct to a motor, or I should use a atmel ? Hum....I am still confused.
The programming part is also not clear yet, is there any BASIC routine example avaiable for a pourpose like?
I also found your last year post on the topic:
Postado em: 18 Dezembro 2007, 05:29
A good way to find motors and radio controller would be disassembling some toys like cars or getting some construction kits that comes with engines. Hacking the remote control, it is possible to connect the MSX output direct into the remote.
So should I try to conect the wires from the Rs232C to the remote control of a car for exemple ?
Sorry for the mess...thank you very much!!!
  |
|
Yukio msx professional Berichten: 778 | Geplaatst: 20 Februari 2008, 11:43   |
I don't know how to use the serial RS232C ... For the parallel port, it should be a matter of just one wire per signal (for simple projects) , much like a interrupter or switch/button (like in the binary led's and/or lamps) ... Some machines would require two bits per function, one for controlling each direction or motor (example: right, left. up, down).
I was thinking in adapting those things to works for radio remote controlled devices like electronic toys (airplanes, helicopters, cars)!
The Parallel port project had the schematics for the electronic board and integrated circuits to make the logic.
Into most cases there should be some components required.
|
|
konamiman msx freak Berichten: 132 | Geplaatst: 20 Februari 2008, 12:49   |
<joke>
It is extremely easy. From BASIC:
MOTOR ON
MOTOR OFF
The drawback is that this will not work on Turbo-R.
</joke>
Sorry...
|
|
Sonic_aka_T
 msx guru Berichten: 2262 | Geplaatst: 20 Februari 2008, 21:13   |
Quote:
| Hello, Iam looking for informations about motor control from MSX. The objective is to control a telescope motor from it. Is it possible to do it from the joystick port ? Please give me some light !! Is it possible to do it with basic programing ?
Where from should I begin to put it to work ?!!!
Thanks alot!
|
Yes, it's fairly easy to do this using the joystick port. It does require some additional hardware though, which you would need to have built or build yourself. It's not very expensive (around $20) nor is it difficult (1 or 2 ICs on a breadboard), but you will need to put some work into it before everything works. You would indeed be able to control the motor using a small BASIC and machine-code program. |
|
DemonSeed msx professional Berichten: 915 | Geplaatst: 20 Februari 2008, 23:19   |
Yeah, miss the sound.  |
|
pauloall msx friend Berichten: 3 | Geplaatst: 21 Februari 2008, 22:19   |
Hum, ok thank you all. Iam beginning to figure it out. Regarding the MOTOR command, I thought that was just for the cassete, is it usable to the joystick port ? Despite I dont know assembler I found the following routine for the Joynet connection, and I was wondering if it could be used for the motor control....(from Marcelo Teixera article, from the net):
LD A,&H0F
OUT (&HA0),A ;
IN A,(&HA2) ; A
AND &HBF ;
OUT (&HA1),A ;
Sonic_aka_T thank you for your idea of the breadboard! Is it possible to command just from BASIC ?
I hope you all could give me more insights in the hardware and programming parts.
Thanks!
|
|
NYYRIKKI msx master Berichten: 1507 | Geplaatst: 23 Februari 2008, 12:11   |
Because of MSX standard interrupt routine using joystick port for output is not very good idea. I think using printer port is much better and easyer solution.
I think this article may be interesting for you:
http://www.taprk.org/eng/general/cmri.html
It explains, how railroad system was controlled with MSX-BASIC.
|
|
Sonic_aka_T
 msx guru Berichten: 2262 | Geplaatst: 23 Februari 2008, 23:25   |
Quote:
| Sonic_aka_T thank you for your idea of the breadboard! Is it possible to command just from BASIC ?
|
I'm not sure. Perhaps it could be done using OUT commands, but it shouldn't be too hard for me (or many other people here) to write a small piece of code which allows you to control it using a few USR(X) commands. |
|
arnold_m msx lover Berichten: 81 | Geplaatst: 27 Februari 2008, 21:58   |
The MOTOR ON and MOTOR OFF command only work via the cassette connector. A real MSX has a relay built in, so you can switch one motor on and off without needing extra interface circuitry.
However for your telescope you'll probable want to control the direction and the speed, which is more than a simple cassette relay can do for you.
Your telescope motor may be a stepper motor, which requires carefully timed signals, otherwise you will probably want a way for your computer to measure the angle over which the telescope has been turned.
After all, what good is a motorised telescope with computer control, if it cannot track a star while you sleep?
|
|
|
|
|