Controllers are devices that allow processing digital signals. Just a few decades ago, all logical systems were built on the basis of electromechanical relays. They are still used, but in most areas they have been replaced by microcontrollers. Controllers are most widespread in industry, specifically in control and automation systems. The MODICON device, manufactured by Bedford Associates, first appeared on the electronics market in the 1960s.

Similar devices developed by other companies became known as PLCs. More precisely, these are programmable logic controllers. Their work depends on a program that is written using a personal computer through a special interface. It was thanks to the use of devices on the controllers that it was possible to replace a large number of electromechanical relays with logical elements.

PLC Features

In order to understand what a controller is, you need to understand its structure and purpose. The programmable element has several inputs - with their help the state of switches and sensors is monitored. And there are output terminals that supply signals of various levels to solenoid valves, contactors, electric drives, relays and other actuators.

Programming a PLC is very simple because the language in which it is done is very similar to the operating logic of electromagnetic relays. If an electrical engineer or ordinary installer knows how to read relay system diagrams, then he will be able to program controllers without much difficulty. This will take a little time, it all depends on the number of logic elements and functions.

It should be noted that, depending on the PLC model, connecting signal sources to them and programming features will differ slightly. But the essence of the setup procedure remains unchanged.

Connecting elements to the PLC

All controller models have terminals for connecting power - some require AC voltage up to 120 V, while others require DC voltage up to 24 V. The supply voltage depends on the device model. The input terminals are designated by the letter X - each receives a separate signal. The common wire is usually connected to the source neutral alternating current or with a minus constant.

The controller housing has an optical isolator - a simple LED. With its help, the input terminal and the common terminal are connected. When voltage is applied to the PLC, the LED lights up - it is from this that you can judge that the device is working. At the output, a signal is generated using computer circuitry - the switching device is activated. Electromagnetic relays, transistors, power switches, and thyristors can be used as a switching device. The outputs are designated by the letter Y. Each output has an LED indicating that the device is working.

How does programming work?

Controllers are devices that allow you to process an electrical signal and convert it. Today, logic is installed in a PLC using computer program. It determines which output terminals will have voltage under certain conditions at the input terminals. In part, this logic is similar to that used in relay circuitry. But there are no relays, switches, or contacts in it. Writing and viewing a program occurs using a computer that is connected to the programming port.

Logic of a simple program

Let's say we have a controller, a lamp and a switch. The controller is connected to a power source, a switch is connected to the input, and a lamp is placed at the output. When you press the button, the lamp should light up. A version of the simplest program for a PLC:

  1. When the switch is open, no voltage is supplied to the input, so the lamp at the output will not light up.
  2. When you press the button, an input signal is sent. In the program, the contacts corresponding to the port will be activated. All imaginary relays will start working inside the controller. This is a figurative designation; in fact, there are no electromagnetic relays in it. As a result, voltage appears at the output of the controller and the lamp lights up.

It is most convenient to consider all actions that are performed with controllers using the example of electromagnetic relays. This way you can see the operation of the device more clearly.

Why do you need a computer

Using a computer, a logical connection is created between the input and output terminals. The software used to compose the logic allows you to send a virtual signal to the controller and see how it will act under certain conditions. After the logic is embedded inside the PLC, the computer turns off and the controller operates independently. He will be able to carry out all the commands that were given to him at the programming stage without outside help.

PLC versatility

To understand the power and versatility of programmable components, it is necessary to consider several types of programs. The controller is a programmable element, therefore, without secondary configuration of the elements connected to it, you can change all specified commands. Let's say you need to change the program discussed above - when the button is closed, the lamp should go out, and when opened, it should light up.

To execute such a command, you simply need to swap the types of commands that were previously available. When you press the button, voltage should be applied to the PLC input, and the imaginary relay that is located in it has normally closed contacts. Therefore, when voltage is applied, the contacts open and the lamp goes out. But when the signal in the controller circuit disappears, the imaginary relay closes the contacts and the lamp lights up.

Benefits of controllers

One of the advantages of controllers is the ability to implement logical control in software. Moreover, unlike relay equipment, the output signal can be used as many times as required for automation. Using an automation controller, you can design a system for starting and stopping an electric motor. To build a similar system using electromechanical elements, you need to use three relays.

When using a controller, buttons are connected to two input terminals. An electric motor is installed at the output. The logic looks like this:

  1. When you press the button connected to pin X1, the motor starts. In this case, the contacts of the imaginary relay are activated and the supply voltage appears at the output.
  2. When the button connected to X2 is pressed, the motor stops. In this case, the fact that the first button was previously pressed is ignored.

Moreover, all processes that occur in the controller system can be duplicated for remote monitoring. It is with the help of this property that remote control of systems is implemented. Now you know what controllers are and what they are key features. Programming devices can be mastered by anyone who understands computer and relay technology.

When repairing equipment and assembling circuits, you always need to be sure that all elements are in good working order, otherwise you will waste your time. Microcontrollers can also burn out, but how to check if not? external signs: cracks on the body, charred areas, burning smell, etc.? To do this you need:

    Power supply with stabilized voltage;

    Multimeter;

    Oscilloscope.

Attention:

A complete test of all microcontroller nodes is difficult - The best way replace it with a known good one, or flash another program code with the existing one and check its execution. In this case, the program should include both checking all pins (for example, turning LEDs on and off after a given period of time), as well as interrupt circuits and other things.

Theory

This is a complex device containing multifunctional units:

    power circuits;

    registers;

    inputs-outputs;

    interfaces and so on.

Therefore, when diagnosing a microcontroller, problems arise:

The operation of obvious components does not guarantee the operation of other components.

Before you start diagnosing any integrated circuit, you need to read the technical documentation, to find it, write in a search engine a phrase like: “name of datasheet element”, alternatively - “atmega328 datasheet”.

On the first sheets you will see basic information about the element, for example, let's look at some points from the datasheet for the common 328 atmega, let's say we have it in a dip28 package. We need to find the pinouts of microcontrollers in different cases, let's look at the dip28 we're interested in.

The first thing we will pay attention to is that pins 7 and 8 are responsible for the power supply plus and the common wire. Now we need to find out the characteristics of the power circuits and the consumption of the microcontroller. Supply voltage is from 1.8 to 5.5 V, current consumption in active mode is 0.2 mA, in low-power mode - 0.75 µA, while a 32 kHz real-time clock is turned on. Temperature range from -40 to 105 degrees Celsius.

This information is enough for us to carry out basic diagnostics.

Main reasons

Microcontrollers fail, both due to uncontrollable circumstances and due to improper handling:

1. Overheating during operation.

2. Overheating when soldering.

3. Output overload.

4. Reversing the power supply.

5. Static electricity.

6. Bursts in power circuits.

7. Mechanical damage.

8. Exposure to moisture.

Let's look at each of them in detail:

1. Overheating may occur if you operate the device in a hot place, or if you place your design in a case that is too small. The temperature of the microcontroller can also be increased by too tight installation, incorrect layout of the printed circuit board, when there are heating elements next to it - resistors, power circuit transistors, linear power regulators. The maximum permissible temperatures of common microcontrollers range from 80-150 degrees Celsius.

2. If you solder with a soldering iron that is too powerful or hold the tip on the legs for a long time, you can overheat the MK. The heat will reach the crystal through the leads and destroy it or its connection to the pins.

3. Pin overload occurs due to incorrect circuit designs and short circuits to ground.

4. Polarity reversal, i.e. supplying negative power supply to Vcc, and positive supply to GND may be a consequence of incorrect installation of the IC on printed circuit board, or incorrect connection to the programmer.

5. Static electricity can damage the chip, both during installation, if you do not use antistatic paraphernalia and grounding, and during operation.

6. If a failure occurs, the stabilizer breaks, or for some other reason the microcontroller is supplied with a voltage higher than permissible, it is unlikely to remain intact. This depends on the duration of the impact of the emergency.

7. Also, do not be too zealous when installing the part or disassembling the device, so as not to damage the legs and body of the element.

8. Moisture causes oxides, leads to loss of contacts, short circuit. Moreover, we are talking not only about direct contact of liquid with the board, but also about long-term operation in conditions with high humidity (near reservoirs and in basements).

Checking the microcontroller without tools

Start with an external inspection: the case must be intact, the soldering of the terminals must be flawless, without microcracks and oxides. This can be done even with a regular magnifying glass.

If the device does not work at all, check the temperature of the microcontroller; if it is heavily loaded, it may heat up, but not burn, i.e. The temperature of the case should be such that the finger can tolerate holding it for a long time. You can't do anything else without a tool.

Check if voltage is coming to the Vcc and Gnd pins. If the voltage is normal and you need to measure the current, it is convenient to cut the trace leading to the Vcc power pin, then you can localize the measurements to a specific microcircuit, without the influence of parallel-connected elements.

Do not forget to strip the board coating down to the copper layer in the place where you will touch the probe. If you cut it carefully, you can restore the track with a drop of solder or a piece of copper, for example from a transformer winding.

Alternatively, you can power the microcontroller from an external 5V power source (or other suitable voltage) and measure the consumption, but you still need to cut the track to eliminate the influence of other elements.

To carry out all measurements, we only need information from the datasheet. It will not be superfluous to look at what voltage the power stabilizer for the microcontroller is designed for. The fact is that different microcontroller circuits are powered by different voltages, it can be 3.3V, 5V and others. Voltage may be present, but may not be rated.

If there is no voltage, check if there is a short circuit in the power supply circuit or on the other legs. To quickly do this, turn off the power to the board, turn the multimeter into dial mode, and place one probe on the common wire of the board (ground).

Usually it runs along the perimeter of the board, and there are tinned pads at the mounting points with the housing or on the connector housings. And with the second one, pass through all the pins of the microcircuit. If it beeps somewhere, check what kind of pin it is, the dialing should work on the GND pin (8th pin on atmega328).

If it doesn’t work, the circuit between the microcontroller and the common wire may be broken. If it works on other legs, look at the diagram to see if there are any low-resistance resistances between the pin and the minus. If not, you need to unsolder the microcontroller and ring again. We check the same thing, but now between the power supply positive (with the 7th pin) and the microcontroller pins. If desired, all legs are connected to each other and the connection diagram is checked.

The eyes of an electronics engineer. With its help you can check the presence of generation on the resonator. It is connected between pins XTAL1,2 (pins 9 and 10).

But an oscilloscope probe has a capacitance, usually 100 pF; if you set the divider to 10, the probe capacitance will drop to 20 pF. This makes changes to the signal. But for testing functionality this is not so important; we need to see if there are any fluctuations at all. The signal should have a shape like this, and a frequency corresponding to a specific instance.

If the circuit uses external memory, then you can check it very easily. There must be bursts of rectangular pulses on the data exchange line.

This means that the microcontroller is properly executing code and exchanging information with memory.

If you unsolder the microcontroller and connect it to the programmer, you can check its response. To do this, in the program on your PC, click the Read button, after which you will see the programmer ID; on the AVR you can try to read the fuses. If there is no read protection, you can read the firmware dump, load another program, test the work on the code you know. This is an effective and simple way to diagnose microcontroller faults.

The programmer can be either specialized, such as USBASP for the ATS family:

And universal, like Miniprog.

Conclusion

As such, testing a microcontroller is no different from testing any other microcircuit, except that you have the opportunity to use a programmer and read the microcontroller information. This will ensure that it can communicate with your PC. However, there are faults that cannot be detected in this way.

In general, the control device rarely fails; more often the problem lies in the wiring, so you should not immediately go to the microcontroller with all the tools; check the entire circuit so as not to have problems with subsequent firmware.

What to do if the technology works at different “levels”? When does she “communicate” in different languages? It would be difficult to achieve constructive implementation of the functionality if not for useful additions.

This is the name of an electronic device that is used to connect various computer buses that differ in their interface, operating principle and design. In terms of semantic meaning, the word “adapter” is suitable for the controller. Speaking about them, we can say that their purpose is the same. But a controller is still called a more complex device. It refers to devices that can perform independent actions after receiving commands from the program that maintains them. So, a complex controller may have its own processor. But if we consider it from the point of view of an ordinary user, then these concepts are indistinguishable and can be considered synonyms. That's what a controller is.

Additional

Why is it necessary to use controllers, besides the already mentioned mediation? The presence of such devices allows you to reduce the load on the central processor. Thanks to this, system performance increases significantly. The mechanism for this assistance is that controllers relieve computer central processing units from the slowest input or output operations. For the first time, the idea of ​​​​using special intelligent circuits that will unload the CPU was implemented in the third generation of collective electronic computers IBM-360. In the Soviet Union there was a specific analogue of the ES computer. By the advent of the fourth generation, the technological possibility of assembling a control system within a single crystal arose. Thus, the first microcontrollers appeared.

What does it include

Now this is a very complex technical unit, which has been significantly improved since its development. A modern average controller has its own microprocessor, registers of external devices, thanks to which the device interacts with the CPU, RAM, ROM, and matching (buffer) circuits. That's what a controller is. To imagine what this complex device is, imagine a simplified specialized electronic computer that deals only with a certain range of actions - for example, it interacts with a keyboard that is connected to a computer. As soon as a key is pressed, this information is transmitted to the central processor, where it is already processed accordingly.

Work with computer

How does the controller work with a personal computer? To do this, it must have the appropriate program and data in its RAM. They get here from various devices, such as keyboards, disks, mice. The term “external” is usually used to refer to them. Although, for the sake of fairness, it should be noted that some of them (such as the disk drive) are located inside the computer system unit. The processing result is also output to external devices such as a printer, disks, flash drives and a monitor. To summarize, we can say that for a personal computer to function fully, there must be data exchange. It's called input/output. In order for data exchange to perform the functions assigned to it, two links must work:

  1. Each external device connected to a personal computer has an electronic circuit that is used for control. And the controller driver controls it.
  2. Each of them interacts with RAM thanks to the system data transmission line - the bus. All components of a personal computer that must work are connected to it using system expansion connectors, which are called slots.

What else can they be used for? Here the Simple Communications controller is used to monitor the temperature of the component parts of the system unit. After all, overheating can cause something to melt and fail. Therefore, a device was provided that, as a reaction, can turn on/strengthen the cooling system or reduce the power of the component. For any device to work properly, controller drivers are required. For Windows 7 or other operating system There are system files that organize the operation of the device with a personal computer.

Schematic images and their dependence on specialization

Now a little about the schemes. The fact is that there is no one universal and recognized thing. This is because controllers exist for different purposes and they need to perform different functions. It is precisely because of this that there is no need to talk about their versatility. Just think how a monitor controller can make a printer work if it doesn't have the necessary hardware. Therefore, within the framework of the article, several samples are still posted, but they are shown here more for informational purposes, in order to have an idea of ​​how these devices are designed. But the controller circuit for each specific case must be selected separately.

Conclusion

So, we looked at what a controller is. As you can see, they play a fairly significant role in improving such technical systems, like computers. Of course, you can do without them, but then you will have to talk about significant difficulties and a drop in production capacity. Although, if you look at each controller individually, you may first wonder how such weak devices can help. Indeed, most of them have insignificant characteristics, which can amount to units of megabytes or even kilobytes. That is, they can perform even just a few tens of thousands of operations per second! But believe me, if these tasks were transferred to the central processor, it would spend significantly more due to the complexity of the organization.

Hello.

When there are problems with the network (more precisely, its inaccessibility), very often the cause is one detail: there are no drivers for the network card (which means it simply does not work!).

If you open the task manager (which is recommended in almost every manual)- then you can see, most often, not a network card, opposite which the yellow icon will be lit, but some kind of Ethernet controller (or network controller, or Network controller, etc.). As follows from the above, an Ethernet controller refers to a network card (I won’t dwell on this further in the article).

In this article I will tell you what to do with this error, how to determine the model of your network card and find drivers for it. So, let's start analyzing the “flights”...

Note!

Perhaps you do not have access to the network for a completely different reason (not due to the lack of drivers on the Ethernet controller). Therefore, I recommend checking this point again in the device manager. For those who don't know how to open it, I'll give a couple of examples below.

How to enter Device Manager

Method 1

Method 2

In Windows 7: in the START menu you need to find the line to execute and enter the command devmgmt.msc.

In Windows 8, 10: press the combination of the Win and R buttons, enter devmgmt.msc in the line that opens, press Enter (screen below).

Examples of errors that cause

When you go to Device Manager, look at the " Other devices". This is where all devices for which drivers are not installed will be displayed. (or if there are drivers, but there are problems with them).

Several examples of displaying a similar problem in different versions of Windows are presented below.

This occurs most often in the following cases:

  1. After Windows reinstallation . This is the most common reason. The fact is that by formatting the disk and installing a new Windows, the drivers that were in the “old” system will be deleted, but they are not yet in the new one (you need to install them again). This is where the fun begins: the disk from the PC (network card), it turns out, was lost a long time ago, and it’s impossible to download the driver on the Internet, since there is no network due to the lack of a driver (I apologize for the tautology, but here it is vicious circle) . It should be noted that new Windows versions(7, 8, 10) during installation, they find and install universal drivers for most equipment (rarely is something left without a driver).
  2. Installing new drivers. For example, old drivers were removed and new ones were installed incorrectly - please receive a similar error.
  3. Installing network applications. Various applications for working with the network (for example, if they were incorrectly uninstalled, installed, etc.) can create similar problems.
  4. Virus attack. Viruses, in general, can do anything :). No comments here. I recommend this article:

If everything is ok with the drivers...

Pay attention to this moment. Each network adapter in your PC (laptop) has its own driver installed. For example, on a typical laptop, there are usually two adapters: Wi-Fi and Ethernet (see screenshot below):

  1. Dell Wireless 1705... - this is the Wi-Fi adapter;
  2. Realtek PCIe FE Family Controller is just a network controller (Ethernet-Controller as it is called).

HOW TO RESTORE THE NETWORK / FIND A DRIVER FOR THE NETWORK CARD

Important point. If the Internet does not work on your computer (due to the fact that there is no driver), then you cannot do it without the help of a neighbor or friend. Although, in some cases, you can get by with your phone, for example, by downloading the necessary driver for it and then transferring it to your PC. Or, as another option, just share the Internet from it if, for example, you have a Wi-Fi driver:

Option #1: manual...

This option has the following advantages:

  • no need to install any additional utilities;
  • download only the driver you need (i.e. there is no point in downloading gigabytes of unnecessary information);
  • you can find a driver even for the rarest equipment, when special. programs don't help.

True, there are also disadvantages: you have to spend some time searching...

To download and install the driver for any Ethernet controller, you first need determine exactly its model (well, Windows OS - I think there will be no problems with this. If anything, open “my computer” and right-click anywhere, then go to properties - all the information about the OS will be there).

One of the most reliable ways to determine a specific equipment model is to use special identifiers VID and PID. Every equipment has them:

  1. VID is the manufacturer's identifier;
  2. PID is the product identifier, i.e. indicates a specific device model (usually).

That is, to download a driver for a device, for example, a network card, you need to find out the VID and PID of this device.

To find out VID and PID - you need to open it first device Manager. Next, find the equipment with a yellow exclamation mark (or the one for which you are looking for a driver). Then open its properties (screen below).

Next, you need to open the “details” tab and select “Equipment ID” in the properties. Below you will see a list of values ​​- this is what we were looking for. This line needs to be copied by right-clicking on it and selecting the appropriate one from the menu (see screenshot below). Actually, using this line you can search for a driver!

Then you paste this line into a search engine (for example, Google) and find the required drivers on numerous sites.

As an example, I’ll give a couple of addresses (you can also directly search for them):

Option 2: using special. programs

Most programs for automatically updating drivers have one urgent need: the PC where they work must have access to the Internet (and preferably fast). Naturally, in this case, it makes no sense to recommend such programs for installation on a computer...

But there are some programs that can work autonomously (that is, they already contain all the most common universal drivers that can be installed on a PC).

  1. 3DPNET. A very small program (you can even download it via the Internet on your phone), which is designed specifically for updating and installing drivers for network controllers. Can work without access to the Internet. In general, it couldn’t come at a better time in our case;
  2. Driver Pack Solutions. This program is distributed in 2 versions: the first is a small utility that requires access to the Internet (I don’t consider it), the second is an ISO image with a huge set of drivers (there is everything for everything - you can update drivers for all equipment installed on your computer). The only problem: this ISO image is about 10 GB. Therefore, you need to download it in advance, for example, onto a flash drive, and then run it on a PC where there is no driver.

These programs and others can be found in this article :

3DP NET - saving the network card and the Internet :)…

That, in fact, is the whole solution to the problem in this case. As you can see from the article, in many cases you can even do it on your own. In general, I recommend downloading and saving somewhere on a flash drive drivers for all the equipment you have (as long as everything works). And in the event of any failure, you can quickly and easily restore everything without hassle (even if you reinstall Windows).

That's all for me. If there are any additions, thank you in advance. Good luck!

How to recognize the controller?

Master's answer:

Any computer contains a large amount of hardware. Finding out what each of them is called without resorting to software methods is almost impossible.

We will need: - a program to determine the computer configuration.

To determine the model of the motherboard controller, open the computer properties. A window will appear, select the “Hardware” tab in it and launch the Windows Device Manager. A list of equipment will appear in which we need to find the required controller and rewrite its name. We do the same if we need to find out information about other devices, for example, about a video card and sound adapter, modem and network card, etc.

Let's use a special software to view hardware configurations. Let's download the special utility Astra, or another similar one. In general, we will select the one that is most convenient for us, install it, launch it and see what devices are on the computer.

Let's also try to determine what type of controllers are installed on the computer, without resorting to installing special programs. To do this, we will use standard Windows OS utilities. Let’s open the “Start” menu for this and open the “Run” item in it. Enter “msinfo32” into the empty field. A new window will appear, in its left part we will select what type of controller it is - audio, video, sound adapter, memory device, etc.

One by one, we open the necessary directories in the folder tree on the left to find the controller we need, then select it using the mouse button. Let's look at what information about it is contained on the right side of the window. If necessary, we will rewrite it, or, better yet, save it in a text file so that in the future we will have quick access to it when searching.

To view the processor and memory parameters, go to “My Computer”, right-click on an empty space, and view the configuration. Typically there is a processor type and model, as well as information about its manufacturer and frequency. Information about RAM is also displayed here.

Please note: You need to be extremely careful when choosing device drivers, and you should always look for system information before installing them.