Wednesday, November 29, 2006

The 8255 Input Reading Problem

Today we continue troubleshooting the 8255 Interface Board. I dismantle the IB and clean both sides of the circuit board. Also we test both of the ribbon cables, short and long. Next we tried both of the conntrol registers again. This is not to mention the trials of all ports A,B and C for all possible communications. What is more I rewrite the iotest.c adding decimal to binary function for easy bits reference. However, we still get the same result, any input from any location of the 8255 simply cannot be read. In other words, its always giving 0xff reading. This is so frustrating giving the effort and hardwork we had done to accomplish up to this level.

This is the connections that I discovered for the 8255IIB Layout after double check with the original data layout. Now I can use both of the control registers ports A,B and C with assurance that the pins that I use id correct.


So later in the afternoon Mr Yu ordered to get alternative board, and to ask the Vanguard whether they still have any available for PCI slot. Contact Mr Robin, but cannot be reached. Ask for his assistant Ms Cecilia but to no avail as well. So SMS and email both of them for the 8255 PCI slot quotation.

On the next day call them again, and they said they do not have the stock now but will inform us once they get the feedback from their suppliers ASAP.

Monday, November 27, 2006

The 8255 io Reading & Servo Rotation Problem

8255 IIB
The 8255 issues have not been settled yet. Since last week we are having difficulties in finding what's the real problem that hinders the input port from being read.

What happened now is that, any input from Control Register 1 and 2 whether port A,B or C, all display 0xff. This is incorrect since the program have not been altered. Last time any point can be read. I guess there could be some hardware problem with that old board, but for the time being I can't prove it yet.

Today, I tried the second control register and double the 8255 Intermediate Interface Board
(IIB) wiring to ensure my test wiring is OK. Unfortunately, even with correct wiring, same old working problem, still the reading from the input port come out 0xFF.

This is really frustrating since the program I use to test is the actual working program. Next, it slow down the project progress. What more, as I can't proceed with the USB project yet as long as this issue is not solved.


Servo Rotation
This is the prototype circuit assembly that I used to signal the Servo Motor movement. As you can see there are two variables resistors, one for timing range(limit-1Mohm) and another one(500kohm) to move the servo.
I collect some information regarding Servo Motor characteristics that might help in solving the rotation issue with my parallax Futaba S3003. It says that for most standard SM specs that timing for neutral position is about 1.5ms. Any timing longer than 1.5ms will force the SM to turn CW, and vice versa. Usually the timing range is between 1 to 2 ms. From one sets of timing signal, the minimum delay is about 20 to 30ms is required to protect the gear of the SM. With some modification the SM turning degrees can be adjusted up to user requirement. Even for some cases, it is possible to modify up to basic DC motor.

Due to this features of the SM, so the conclusion for my SM problems can only be conclude once I managed to come out with perfect timing with correct equipment such as oscilloscope.

Thursday, November 23, 2006

The Futaba S3003 Servo Motor PWM Signal Testing



Today I assembled the circuit for the Pulse Width Modulation (PWM) to generate the signal to run the Futaba s3003 servo motor.

Here is the circuit for PWM,


and here is the Futaba S3003 servo
just for information.
The circuit is asembled on the protoboard to shorten the testing period. A few parts changes had to be made due to unavailability of the accurate items. The 80.5kohm was replaced by 84kohm, the 36nF capacitor was replaced by 47.3 nF, and the two 47kohm & 560k ohm variable resistors were replaced by 500kohm and 1Mohm. Once the circuit is completely assembled, I add on one Single Pole Double Throw (SPDT) toggle switch as a signal trigger point. Since last time I bought 4 pieces so I tried all. Out of four, only one can fully turn 180 degree when the PWM signal is and return to actual location once the PWM signal is off. The other three, once received the PWM signal it turned a bit,but never return to actual position once the signal is off. For the time being I'm not sure whether the problem is due to faulty servos, or PWM signal incorrect. The best hypothesis that I can say now is there could be a problem with the servos as when I manually turn the three servos, they do turn 180 degrees once the PWM signal is applied. The only thing is that they cannot return to actual position once the signal is OFF.

This is the completed assembled circuit on the protoboard

Tuesday, November 21, 2006

The 5IO TIB cold solder and connector quality problem

Its quite a while the project have been delayed due to holidays and Information System task requirement. So today I managed to spend a few hours time troubleshooting the 5io Trial Interface Board (5IOTIB).

What I found is that, there is no problem with the design. This is confirmed by testing on the prototype board of the circuit design. The main problem was due to the cold solder of the previous old PCB and low soldering quality of the upgraded circuit. After replacing the jumper wires and resoldering the power connections, then the circuit is back to as designed. However, when the testing is being done with the PPI8255 IIB, there board still failed to make connections. Further troubleshooting reveals that some of the crocodile connectors are faulty. Once replaced, everything is back to normal. Now since the hardware is OK already, then Mr Khow can proceed with his own software programming.

Later, when I tried with the 5iotest software, something weird is happening. The program is now failed to switch off the 8255 switches. In other words it failed to ZERO all of the ports. However, when I checked with the test5.exe, the IOs are managed to be cleared to ZERO = off. One thing that I can inferred is that the 5iotest software is corrupted, or in other words it is not original anymore. Maybe some part of the program is being mistakenly altered. So for the time being I will let Mr Khow to play around with his own switch software since my IT tasks have not been completed yet. Yet another, the servo motor PWM also haven't been started yet, and the tester board for USB just one sided wiring completed only.

Monday, November 06, 2006

The quest for CS-600 FET Jumbo Servo

I have been seeking for the simillar type of FET Jumbo Servo for quite sometime. This is the actual CS-600 Servo Motor that I'm looking for.

In fact, this servo is suposedly the most powerful of its kind.
This is the big one! The CS-600 is the strongest servo you will find. And, thanks to the special FET motor drivers, you do not have to sacrifice speed to achieve high torque. This servo boasts an incredible 333 oz./in. of torque (6v supply), yet it is one of the fastest servos in the Cirrus line! We recommend the use of a high capacity 6.0v battery pack when using this servo.

So far I have two official quotation from HS-422 for RM85 which torque is about 4.1kg/cm at 6V. The other is Hitecc china brand 4kg/cm = RM70, 7kg/cm=90, and 13kg/cm=RM110.
As this CS-600 is 333 oz/in which is about 23.3kg/cm. Thus, I have to narrow down the replacement for this jumbo servo. Else it would be small enough to carry the weight of the projected robot.

Friday, November 03, 2006

The Discovery of Actual IIB CN1 Pin Assignment

This morning I went to SS2 again to get the components for the PWM circuit. I also bought a breadboard so that I can use it to test any circuit prior to actual assembly and soldering on the PCB to avoid unnecessary rework. Today's purchase is RM29.50 and rm30.40

Later in the afternoon I troubleshoot the 8255 Intermediate Interface Board (IIB) again and come out with the new pins assignment especially for Port A. Actuallyy the reason yesterday work cannot run properly is simply due to wrong wiring of the some port A which is pin PAO and PA1 that incidentally plug on to the OUT and CLOCK causinng the 8255 board to malfunction.

Today, once I found the right configuration and tested with yesterday 5iotest.c program everything working fine. This is the pins configuration for CN1 of the IIB.

Thursday, November 02, 2006

The 8255 Tester Board Upgrade Problem

The 8255 5 i/o upgaded board giving trouble today. The I/O were not in tally with the Intermediate Interface board (IIB). Troubleshoot and found out that the IIB configuration is not exactly the same as in the book as designed by the Taiwan group. Doublecheck with the one done by Mr Khow couple weeks ago. It doesnt match that one as well. Check the port 1 configuration and sketch the layout configuration for the IIB from the IDC 40P to the screw type connectors. Here is the layout found.


Later, connect the IIB to the 8255 5 I/O Tester Board
. The connection failed as well where the 12VDC LED indicator is not light up. Check the upgraded PCB and found some wiring problem. Disconnect the upgraded part from the old 5 output ports. Test the old output port only. It's OK, meaning the trouble was caused by the upgraded circuitry.


Write simple program to use the input and output of the 8255. Test against IIB, and 8255 5O Tester Board. It can work but the program need to be fine tune to get more stable result.

Hangman