top cnc controller topcnc brand

TOP CNC Controller

1,TC55H TOPCNC CNC controller

TC55H manual

1. Product Introduction

TC55H is an upgrading version of TC55. It can control 4 feeding axis, 1 analog spindle. It is equipped with 16 
input port and 8 output port, supporting importing G code files from USB stick.  Support saving the current coordinates after power off. 

2. Technical Specifications 

Minimum data unit 0.001 mm
Maximum data size ± 99999.999mm
Maximum Speed: 24m/min (pulse is 0.001mm)
Maximum pulse output frequency 400KHz
Axis 1-4 (X,Y, Z,C)
X,Y,Z,C axis can conduct linear interpolation, X,Y can do circular interpolation. 
Electric Gear: numerator :1-99999 denominator: 1-99999 
USB: Importing program and boot picture(You can load your own logo)
Isolated I/O port
Maximum Program Line:1000
Maximum Program: 99
RAM: 128M
External Manual Operation: motor clockwise and counter clockwise spinning, start, pause, alert and stop 
G code and M code
One panel MPG(Registered Patent)
3.5 inch color LCD, pixel 320*240 
Analog Spindle Output: one 0-10v analog spindle
Support both servo and stepper motor 
Support metric system, round, division, degree, inch etc
Use a usb to connect the computer as power supply or 24VDC power 
We are producer of this controller, so we provide OEM service

TC55V 4 axis 3.5 Inch Color LCD CNC controller

TC55V stepper/servo motor controller

It is equipped with 3.5 inch color screen, RS 485 communication, 
Chinese/English Switch,  and USB connection. 
It is highly reliable, highly accurate, low noise and easy to use.
Programming method 
Different with CNC controllers of Fanuc and Siemens, this controller use revolutionary conversational programming, which is easy to learn and use, automatically lead you to finish programming.  

Main Functions
Automatically execute:Actual running, Dry running, Single-step execution, Terminate program, Start and Pause function
Manual operation:Manual high speed, Manual low speed, Jog operation, Back to program zero, Back to machine zero
Program management:absolute programming, Incremental programming, linear and circular interpolation, back to machine zero, sub-program call,register, delay, repeat, Output, PLC set, Pause  
Parameter settings:Set various control parameters of processing and operation, get the best status of processing effect  
Exterior Manual Operation: control motor clockwise and counter-clockwise spinning, Start, Pause, Alert and Emergency Stop.
USB Connection and upgrade
PLC Extension
I/O Extension
Isolated I/O port
Chinese/English panel display
Free change of boot picture  

Technical Specifications
Minimum data unit 0.001 mm
Maximum data size ± 99999.999mm
Maximum Speed: 9000mm/min (pulse is 0.001mm)
Maximum pulse output frequency 150KHz
Axis 1-4 (X,YZ,C)
X,Y,Z,C axis can conduct linear interpolation, X,Y can do circular interpolation.
Electric Gear: numerator :1-99999 denominator: 1-99999
System main functions are automatic, manual, program editing, system parameters, self-check, settings, etc.
Outside Size  172×94×48mm
Installing Size: 162×84mm,Front Panel: 4mm 

SMC5-5-N-N DSP CNC Controller 5 Axis

DSP controller SMC5-5-N-N CNC for milling machine.
Contents of delivery:

DSP controller SMC5-5-N-N -1 pcs


High-performance, high-speed 32-bit ARM processor, high-performance FPGA
seven-inch LCD display (resolution: 800 × 480)
16 opto isolated inputs (10mA), 8 optically isolated outputs 500mA
Output frequency 500 kHz (all five axes are simultaneously 500 kHz)
Controls 5 axes (X, Y, Z, A, B). Support MPG encoder.
convenient user interface like man-machine, external USB port and built-in 8GTF memory card,
Built-in memory can expand up to 32 GB
Operating voltage 12-24 volts.


GX Developer timer command


T is the timer symbol, 0 is the number, K is the constant, it is decimal, that is, it is one second when it is set to K10.

The value oh D212 acts as the K value. Typically done when you want to allow a timer to be changed without accessing the program (from a numerical input on a HMI for example)

What is the command of Mitsubishi PLC [DDRVI K99999 K8000 Y0 Y03]

DDRVI instruction

DRVI is a relative positioning instruction (DRVI is 16 bits, DDRVI is 32 bits), and the current data in the current value register is used as a starting point to increase or decrease. It is a command to perform single speed position control in relative drive mode.

DDRVI K99999 K8000 Y0 Y03

Output pulse number Output pulse frequency Pulse output start address (only Y0 and Y1 are specified), rotation direction signal output

The scan cycle of the PLC, what is the scan cycle of the PLC?

When the PLC is in the RUN mode, the time required to perform a scan operation is called the scan period, and its typical value is about 1 to 100 ms.

The plc scan cycle has a lot to do with the length of the user program, the type of instructions, and the speed at which the CPU executes the instructions.

When the user program is long, the instruction execution time accounts for a considerable proportion of the scan cycle.

Some programming software or programmers can provide the current value of the scan cycle, and some can also provide the maximum and minimum scan cycles.

High-speed counter (HSC) of Mitsubishi FX series PLC

1. High speed counter

The 21-point high-speed counters C235 to C255 share the eight high-speed counter input terminals X0 to X7 of the PLC, and one input terminal can only be used for one high-speed counter at the same time. These 21 counters are all 32-bit up/down counters (see Table 3–7). Different types of high-speed counters can be used simultaneously, but their high-speed counter inputs cannot conflict.

The operation of the high-speed counter is based on the interrupt, which means that the triggering of the event is independent of the scan time. When counting external high-speed pulses, the coil of the high-speed counter in the ladder diagram should always be energized to indicate that the input point associated with it has been used, and the processing of other high-speed counters cannot conflict with it. The coil of the high-speed counter can be driven by the normally open contact of the M8000, which is always ON at runtime.

When X14 is ON, the high-speed counter C235 is selected. The counting input of C235 is X0, but it does not appear in the program. The counting signal is not provided by X14.

The component number of the input terminal corresponding to the high-speed counter, U and D in the table are the addition and subtraction count inputs respectively, A and B are the A and B phase inputs respectively, R is the reset input, and S is the set input.

2. One-phase high-speed counter

C235~C240 are high-speed counters with no start/reset input for one phase, C24l~C245 are high-speed counters with one phase start/reset terminal, M8235~M8245 can be used to set the counting direction of C235~C2415, and when M is ON, it is countdown. When it is OFF, it is counted up. C235~C240 can only be reset by RST instruction.

C244 in Fig. 1 is a high-speed counter of the 1-phase start/reset end. As can be seen from Table 1, Xl and X6 are the reset input and the start input respectively, and their reset and start are independent of the scanning mode, and their functions are immediate. And direct. If X12 is ON, once X6 turns ON, counting starts immediately and the count input is X0. X6 turns OFF and stops counting immediately. The set value of C244 is specified by D0 and D1. In addition to using Xl for immediate reset, it can also be reset with a reset command in the ladder diagram.

3. Two-phase bidirectional counter

The two-phase bidirectional counter (C246~C250) has an up-counting input terminal and a down-counting input terminal. For example, the C246 up and down counting input terminals are X0 and Xl respectively, and when the counter coil is energized, on the rising edge of X0, The current value of the counter is incremented by 1. On the rising edge of X1, the current value of the counter is decremented by 1. Some counters also have reset and start inputs.

4. A-B phase type double counting input high speed counter

C25l~C255 are A-B phase type double counting input high-speed counters. They have two counting inputs, and some counters also have reset and start inputs.

When X12 in FIG. 2 is ON, C25l counts the operation of the A-phase signal input by X0 and the B-phase signal of X1 input by interruption. When X11 is ON, C251 is reset. When the count value is greater than or equal to the set value, the coil of Y2 is energized. If the count value is less than the set value, the coil of Y2 is de-energized.

The A/B phase inputs not only provide counting signals, but also provide the direction of counting based on their relative phase relationships. The A/B phase type encoder mounted on the rotary shaft automatically counts up when the machine is rotating forward, and automatically counts down when it is reversed. When the A phase input is ON, if the B phase input changes from OFF to ON, it is counted up (see Figure 2b); when phase A is ON, if B phase turns from ON to OFF, it counts down (see Figure 2c). The M8251 can monitor the C251's up/down count status. When the count is increased, M8251 is OFF, and when the count is down, M8251 is ON.

5. High speed counter counting speed

General counting frequency: single phase and bidirectional counters up to l0kHz, A/B phase counters up to 5kHz.

The highest total count frequency: 60 kHz for FXlS and FXlN, 20kHZ for FX2N and FX2NC, and the frequency of the A/B phase counter should be doubled when calculating the total count frequency. X0 and X1 of FX2N and FX2NC have special hardware for single-phase or two-phase counting (C235, C236 or C246) up to 60 kHz, and C25l two-phase counting up to 30 kHz.

The application instruction SPD (speed detection, FUC56) has the characteristics of high-speed counter and input interrupt. X0~X5 may be used by SPD instruction. The input point used by SPD instruction cannot conflict with the input point of high-speed counter and interrupt. When calculating the total count frequency of the high-speed counter, the SPD instruction should be considered as a 1-phase high-speed counter.

Mitsubishi PLC step ladder diagram and SFC

When programming with a stepping instruction, first design the state transition diagram and then convert it into a step ladder or instruction list according to the state transition diagram.

The action process is when the step contact S20 is closed, the output relay Y1 coil is turned on. When the X0 closed new state is set (turned on), the step contact S21 is also closed. At this time, the original step contact S20 is automatically reset (opened), which is equivalent to shifting the state of S20 to S21, which is the step conversion effect. State transition process between other state relays, and so on

It can be seen that the state transition diagram is a graph for describing the control process of the sequential control system, which consists of steps, transition conditions, and directed lines. Each state (step) represents an operation that works in sequence and requires a specific action to be completed. The transition (step) of the state is satisfied. Compared with ordinary instruction programming, the use of stepping instructions not only can intuitively represent the flow of sequential operations, but also can reduce the number of instructions and is easy to understand. Each state provides three functions: driving the load, specifying the transition condition, and setting the new state (while the transfer source is automatically reset).

There are four structures for state transition diagrams based on step and step progress:

1. Single sequence. This basic progress is reflected in the sequential activation of the steps, as shown in Figure 5-3.

2. Select the sequence. An active step is followed by several subsequent steps to select the structural form as a sample sequence. As shown in Figure 5-4, each branch of the selection sequence has its own transition condition.

3. Parallel sequence. Parallel sequences are employed when the implementation of the conversion causes several branches to be activated simultaneously. The horizontal portion of the connected line is indicated by a double line. As shown in Figure 5-5.

4. Step repeat and loop sequence. Jumping, repeating, and cyclic sequences are often used in practical systems. This sequence is actually a special form of the selection sequence.

As shown in Figure a, the skip sequence, when step 3 is the active step, if the transition condition X005 is established, skip step 4 and step 5 and directly enter step 6; b is a repeating sequence, and step 6 is the active step. If the conversion condition X004 is not established and X005 is established, return to step 5, and repeat steps 5 and 6 until the conversion condition X004 is established, and proceed to step 7; C is a cyclic sequence, and after the sequence is finished, repeat In this way, it returns directly to the initial step 0, forming a loop of the sequence.

Difference between FB and FC's Siemens PLC

Siemens PLC Difference between FB and FC's

 characteristic FC FB
 Can be called as a subroutine Yes Yes
 Can assign parameters to Input/Output/InOut Yes Yes
 Temporary variables can be used Yes Yes
 Can use static variables (can be kept) No Yes
 Requires instance data block (per call) No Yes
 Parameters passed as addresses to internal use Yes No
 Parameters are passed to the internal use via the instance data block No Yes
 Can call FB or FC Yes Yes
 Can be called by FB or FC Yes Yes
 Can use FB as multiple background calls No Yes
 Can not write all parameters when called No Yes

Articles 7 and 8 in the above table are very important.
FB has memory (except Temp variable), FC has no memory (cannot remember the result of the last scan cycle),

To emphasize that the FC parameter is passed to the block to pass the address, remembering the address instead of a data.

FB parameter input and output block is the data, remember that the data is not the address, FB has a private storage space, the parameter access block is transferred through the DB data block, copy into / copy out

See the following example to understand:
FC block content.

FB block content, exactly the same as FC

Call FC block

Call FB block

How to use the high-speed counter of Mitsubishi PLC

How to use the high-speed counter of Mitsubishi PLC

High speed counter (C235-C255)

The falling edge of the externally input high-speed pulse signal is counted by means of an interrupt. The high-speed counter sets the instruction HSCS, and the function number is FNC53.


When the current value S1 of the high-speed counter reaches the set value S2, the output point designated by D is immediately set by the interrupt mode.

M8000 S1 S2 D

-||-------[HSCS c235 k1000 Y10]

The set value of C235 is 1000, (S2=1000). If the current value changes from 999 to 1000 or from 1001 to 1000, Y10 is immediately set to 1.
The input point of each high-speed counter is fixed, the c235 input point is x0, c236 is x1, and so on.

Extended data:

High-speed calculator is a powerful numerical calculation tool that saves your calculation time, improves calculation efficiency, and has the function of automatically saving calculation results, suitable for users who frequently calculate data.

The Windows system comes with a calculator, but only two numbers can be calculated at a time, and the calculation results cannot be retained. It is less efficient and error-prone in slightly more complicated calculations, such as the calculation formula: (521 + 12) 30 + (128 + 1024) / 20, using the calculator that comes with Windows needs to calculate 5 times.

Types of PLC Programing Language

The plc programming language specified in IEC 61131-3 includes instruction lists and structured text (ST) as text languages, as well as graphics such as ladder diagrams, function block diagrams (FBD), continuous function diagrams (CFC), and sequential function diagrams (SFC). Language.

1. Instruction List (IL)

The instruction list language is the most basic language for PLC programming. However, the program compiled with it is less readable.

2. Structured Text Language (ST)

The ST language is similar to the BASIC language, the PASCAL language, or the C language. It does not have a single instruction, only a complete set of statements that consist of a set of instructions. Specific statements include assignment statements, conditional statements, selection statements, loop statements, and other statements (EXIT statements, RETURN statements, function block call statements, etc.).

The functions and operators provided by the ST language of different brands of PLCs may be slightly different.

The ST language function is stronger than the graphic language, but it is not as intuitive as the graphic language, and it is not widely used at present. For example, Omron plc can only be used in programs that have self-programming blocks.

Also for the ST language, the details of each PLC manufacturer are not exactly the same.

3. Ladder diagram (LD)

The ladder diagram is from the United States and is a ladder-based graphical symbol Boolean language.

The ladder language corresponds to the electrical schematic and is consistent with the original relay logic control technology. Unlike the original relay logic control technology, the power flow in the ladder diagram is not the actual meaning of the current, and the internal relay is not the actual relay.

The left busbar of the ladder diagram is like the power cable of the electrical schematic diagram. It is generally not directly connected to the output class command (equivalent to the load of the electrical schematic). There must always be some commands in the middle that can establish the logic condition (equivalent to the electrical schematic). control element). But some PLCs also allow this.

4. Function Block Diagram (FBD)

The FBD language (a graphical language corresponding to logic circuits) is very similar to the signal flow diagram in an electronic circuit diagram. FBD is widely used for process control.

The FBD language describes the control functions in units of functional modules. In particular, it is more convenient to control a system with a larger scale and a more complex control relationship.

5. Continuous Function Chart (CFC)

Similar to FBD, CFC also uses various functional blocks as needed. The difference is that it is more flexible, the position of the block can be placed arbitrarily, especially when there is signal feedback, it is more convenient to draw.

In order to have a clear order of execution of the block, the upper right corner of each block is labeled with a sequence number. However, in actual expression, this label can also be selected and not displayed.

6. Sequential Function Chart (SFC)

The SFC language is characterized by describing the sequence of control programs. It graphically describes all the phenomena of the system in a simple and clear way, and can analyze and model abnormal phenomena such as deadlock and insecurity that exist in the system. Programming on this basis. Therefore, it has been widely used.

In fact, the SFC language is just a graphical way of organizing programs. Its actual use should be matched with other languages, otherwise its function will not be realized. So, strictly speaking, it is not a complete programming language.

1) Composition


It is represented by a box, which has three types: initial step, active step, and inactive (rest) step. Whether a step is an active step, that is, whether it is active or not depends on the previous step and its corresponding transition.


An action is a component of a step. A step contains one or more actions, represented by a rectangular box attached to the step. The program code in each action can be written in any language of IEC such as ST, FBD, LD or IL. Each action also has a qualifier that determines when the action is executed or terminated when the step is activated.

Directed connection

Connect the steps from top to bottom and from left to right. You can also use the arrow to make non-up, left and right step connections.


Vertical short lines on the directed line. The logical conditions associated with the transfer are marked with text, Boolean algebraic expressions, and graphical symbols next to the transition line.

2) SFC transfer rules

The transfer of steps refers to the transition of the active and backward activation states of the connected wires.

The rules for the transfer between steps are:

The transition logic condition between 1 step is true;

2 The first step of the transfer step is active.

If these two conditions are not met, they will not be transferred.

In order to initiate the execution of a sequential function flow chart program, an initial step is always specified, which is marked S0, which is the step that was activated when the program was started. With this initial step, the activation state of the step in the flowchart will be gradually converted as the corresponding transition logic condition is met, until the last step is activated, or the loop is continuously looped according to the specified route.

3) The main form of SFC

According to the structure, it can be divided into the following forms: single sequence control, parallel sequence control, branch structure sequence, transfer sequence and so on.

The figure below shows a program written in the SFC language.