Wiki » History » Version 100
Frédéric Blanc, 2024-09-11 16:21
1 | 1 | Frédéric Blanc | h1. Wiki |
---|---|---|---|
2 | |||
3 | 42 | Frédéric Blanc | !{width: 30%}https://redmine.laas.fr/attachments/download/4815/Face%20AV%20PS.jpg! |
4 | 43 | Frédéric Blanc | |
5 | 42 | Frédéric Blanc | !{width: 30%}https://redmine.laas.fr/attachments/download/4814/Face%20AR%20PS.jpg! |
6 | |||
7 | 41 | Frédéric Blanc | {{toc}} |
8 | |||
9 | 11 | Frédéric Blanc | h2. Modbus / RS485 isolated |
10 | |||
11 | 25 | Frédéric Blanc | !clipboard-202404091540-4btca.png! |
12 | |||
13 | 50 | Frédéric Blanc | https://arduino103.blogspot.com/2021/10/decoder-une-trame-rs485-loscilloscope.html |
14 | |||
15 | 25 | Frédéric Blanc | h3. non isoler |
16 | 24 | Frédéric Blanc | |
17 | !clipboard-202404091414-fugem.png! |
||
18 | |||
19 | 21 | Frédéric Blanc | !clipboard-202404081517-wbjgq.png! |
20 | |||
21 | 27 | Frédéric Blanc | h4. Fusibles réarmables |
22 | |||
23 | !clipboard-202404091611-8b8z9.png! |
||
24 | |||
25 | 23 | Frédéric Blanc | h3. Texas Instruments ISOW14x2 Isolated RS-485 DC-DC Converter |
26 | 22 | Frédéric Blanc | |
27 | !clipboard-202404081533-dzk67.png! |
||
28 | |||
29 | 18 | Frédéric Blanc | h3. ANALOG DEVICES LTM2881CV-5#PBF |
30 | |||
31 | 19 | Frédéric Blanc | !clipboard-202404051942-kmfn5.jpg! |
32 | |||
33 | 18 | Frédéric Blanc | Transceiver, RS422, RS485, 20 Mbps, 1 Driver, 1 Récepteur, 4,5 à 5.5V, 0 à 70°C, LGA-32 |
34 | |||
35 | Code Farnell 4023829 |
||
36 | |||
37 | h3. ADM2865E Power Isolated, RS-485 Transceivers |
||
38 | 12 | Frédéric Blanc | |
39 | 1 | Frédéric Blanc | !clipboard-202404041435-zyzea.png! |
40 | 12 | Frédéric Blanc | |
41 | 13 | Frédéric Blanc | |Code Farnell|Référence Fabricant |Fabricant / Description| |
42 | 12 | Frédéric Blanc | |4023816 |ADM2865EBRNZ |ANALOG DEVICES Transceiver, RS422, RS485, 25 Mbps, 1 Driver, 1 Récepteur, 3 à 5.5V, -40 à 105°C, WSOIC-28| |
43 | |1456395 |SM712.TCT |SEMTECH Diode TVS, SM, Bidirectionelle, 12 V, 26 V, SOT-23, 3 Broche(s)| |
||
44 | |1515786 |BLM15HD182SN1D |MURATA Perle de ferrite, 0402 [1005 Metric], 1.8 kohm, 200 mA, BLM15H, 2.2 ohm, ± 25%| |
||
45 | |1867958 |08053D106KAT2A |KYOCERA AVX Condensateur céramique multicouche CMS, 10 µF, 25 V, 0805 [Métrique 2012], ± 10%, X5R| |
||
46 | |2443238 |BLM18HE601SN1D |MURATA Perle de ferrite, 0603 [1608 Metric], 600 ohm, 800 mA, BLM18H, 0.25 ohm, ± 25%| |
||
47 | 11 | Frédéric Blanc | |
48 | 37 | Frédéric Blanc | h3. Module de communication d'isolation, ADUM3201 + B0505XT TTL à RS485 |
49 | |||
50 | !clipboard-202404231543-s8vft.png! |
||
51 | |||
52 | *Attention RX sur TX* |
||
53 | |||
54 | 83 | Frédéric Blanc | h3. DFR0845 |
55 | |||
56 | !clipboard-202407041533-yroi0.png! |
||
57 | 90 | Frédéric Blanc | !clipboard-202407121501-bz7ns.png! |
58 | 83 | Frédéric Blanc | Ce module de transfert de signal RS485 vers UART actif et isolé est livré avec des circuits de protection tels que l'isolation de puissance et le TVS. Compatible avec la plupart des contrôleurs principaux, il présente les caractéristiques d'une vitesse de communication rapide, de performances stables et fiables, d'une sécurité élevée, etc., et peut être appliqué à divers capteurs industriels, équipements de contrôle industriel ou applications nécessitant une conversion de signal RS485. |
59 | https://wiki.dfrobot.com/Gravity_Active_Isolated_RS485_to_UART_Signal_Converter_SKU_DFR0845 |
||
60 | |||
61 | 84 | Frédéric Blanc | N° Mouser : |
62 | 426-DFR0845 |
||
63 | www.gotronic.fr |
||
64 | 85 | Frédéric Blanc | Code: 37411 |
65 | https://fr.farnell.com |
||
66 | 1 | Frédéric Blanc | Code Commande : |
67 | 88 | Frédéric Blanc | 3974134 |
68 | 84 | Frédéric Blanc | |
69 | 28 | Frédéric Blanc | h3. RS485 I2C |
70 | |||
71 | !clipboard-202404120929-wdgmq.png! |
||
72 | |||
73 | 20 | Frédéric Blanc | h2. XY5005E |
74 | |||
75 | 40 | Frédéric Blanc | com le port 4 broches JST 1.25 ne semble pas avoir de TX, ni de RX. Il n'y a pas non plus de menu pour le chois de l'adressage |
76 | 20 | Frédéric Blanc | |
77 | !clipboard-202404081443-iygma.png! |
||
78 | 39 | Frédéric Blanc | !clipboard-202404241236-ulutn.png! |
79 | 38 | Frédéric Blanc | !clipboard-202404241234-m5crk.png! |
80 | |||
81 | 14 | Frédéric Blanc | h2. XY6015L Step-Down Regulated Power Supply |
82 | 1 | Frédéric Blanc | |
83 | !clipboard-202403251011-lfrn1.png! |
||
84 | |||
85 | 4 | Frédéric Blanc | µC AT32F421 ARM® Cortex®-M4 core |
86 | Ctrl EG1163S BUCK DC-DC de Rectification synchrone 300kHz |
||
87 | MOS NCE82H140 |
||
88 | |||
89 | 81 | Frédéric Blanc | h2. DPS5005 |
90 | |||
91 | !clipboard-202406181357-wvt60.png! |
||
92 | |||
93 | |||
94 | |||
95 | Module d'alimentation à afficheur LCD réglable en tension de 0 à 50 Vcc et en intensité de 0 à 5 A. L'écran couleur de 1,44'' offre un affichage particulièrement détaillé et complet des informations. |
||
96 | |||
97 | https://www.gotronic.fr/art-alimentation-programmable-dps5005-29294.htm |
||
98 | |||
99 | 86 | Frédéric Blanc | h3. modification port com |
100 | |||
101 | La vitesse de communication par défaut du port série DPS5005 est de 9 600 bauds, mais vous pouvez la modifier en alimentant l'alimentation tout en maintenant le bouton V/M1 enfoncé. Lorsque la modification est effectuée, appuyez deux fois sur le bouton « set » pour enregistrer la nouvelle configuration. |
||
102 | |||
103 | 91 | Frédéric Blanc | h3. Firmware alternatif |
104 | |||
105 | https://github.com/kanflo/opendps |
||
106 | 92 | Frédéric Blanc | https://redmine.laas.fr/attachments/4885 |
107 | 91 | Frédéric Blanc | |
108 | 87 | Frédéric Blanc | h3. Brochage port com |
109 | |||
110 | !clipboard-202407121448-7reos.png! |
||
111 | |||
112 | |||
113 | 81 | Frédéric Blanc | h2. DPH5005 |
114 | |||
115 | !clipboard-202406181358-4or4r.png! |
||
116 | |||
117 | Module d'alimentation à afficheur LCD 1,44" réglable en tension de 0 à 50 Vcc et en intensité de 0 à 5 A. Ce module délivre un signal de sortie haute résolution réglable par paliers de 10 mV et de 1 mA. |
||
118 | |||
119 | https://www.gotronic.fr/art-alimentation-programmable-dph5005-31537.htm |
||
120 | |||
121 | 31 | Frédéric Blanc | h3. Modbus |
122 | |||
123 | 1 | Frédéric Blanc | !clipboard-202404121322-qk0l1.png! |
124 | 32 | Frédéric Blanc | |
125 | 53 | Frédéric Blanc | voir documentation document:"protocol -english translation V1.2" |
126 | |||
127 | 64 | Frédéric Blanc | |_.function code|_.Definition|_.Operation (binary)| |
128 | 52 | Frédéric Blanc | |0x03|Read register data|Read data from one or more registers| |
129 | |0x06|Write a single register|Write a set of binary data to a single register| |
||
130 | |0x10|Write multiple registers|Write multiple sets of binary data to multiple registers| |
||
131 | |||
132 | 61 | Frédéric Blanc | |\5=. *0x03 Read the function of the host format* | |
133 | 57 | Frédéric Blanc | |address code|function code|Register start address |Number of register |
134 | addresses n (1 ~ 32)|CRC Check code| |
||
135 | 54 | Frédéric Blanc | |1 byte|1 byte|2 byte|2 byte|2 byte| |
136 | |||
137 | 62 | Frédéric Blanc | |\5=. *0x03 Read function Slave returns format*| |
138 | |address code|function code|Returns the number of bytes 2 * n|Register data|CRC Check code| |
||
139 | |1 byte|1 byte|1 byte|2*n Bytes|2 byte| |
||
140 | 52 | Frédéric Blanc | |
141 | 63 | Frédéric Blanc | |\5=. *0x06 Write a single register function in host format*| |
142 | |address code|function code|Register address|Register data|CRC Check code| |
||
143 | 1 | Frédéric Blanc | |1 byte|1 byte|2 byte|2 byte|2 byte| |
144 | 64 | Frédéric Blanc | |
145 | 65 | Frédéric Blanc | |\5=. *0x06 Write a single register function from the machine to return the format*| |
146 | 64 | Frédéric Blanc | |address code|function code|Register address|Register data|CRC Check code| |
147 | |1 byte|1 byte|2 byte|2 byte|2 byte| |
||
148 | |||
149 | 68 | Frédéric Blanc | |\6=. *0x10 Write function host format*| |
150 | 67 | Frédéric Blanc | |address code|function code|Register start address|Number of register addresses |
151 | n (1 ~ 32)|Write the number of bytes 2 * n|Register data|CRC Check code| |
||
152 | 66 | Frédéric Blanc | |1 byte|1 byte|2 byte|2 byte|1 byte|2*n byte|2 byte| |
153 | |||
154 | |\5=. *0x10 Write function slave return format*| |
||
155 | 67 | Frédéric Blanc | |address code|function code|Register start address|Number of register addresses |
156 | 66 | Frédéric Blanc | n (1 ~ 32)|CRC Check code| |
157 | |1 byte|1 byte|2 byte|2 byte|2 byte| |
||
158 | 63 | Frédéric Blanc | |
159 | 69 | Frédéric Blanc | Protocol register description (single register address data for double-byte data) |
160 | 70 | Frédéric Blanc | |
161 | 76 | Frédéric Blanc | |name|Description|number of bytes|Decimal point|unit|Read and write|Register address|dps_modbus.py| |
162 | |U-SET|Voltage setting|2|2|V|R/W|0x0000|voltage_set| |
||
163 | |I-SET|Current setting|2|2|A|R/W|0x0001|current_set| |
||
164 | |UOUT|Output voltage display value|2|2|V|R|0x0002|voltage| |
||
165 | |IOUT|Output current display value|2|2|A|R|0x0003|current| |
||
166 | |POWER|Output power display value|2|2|W|R|0x0004|power| |
||
167 | |UIN|Input voltage display value|2|2|V|R|0x0005|voltage_in| |
||
168 | |LOCK|Key lock|2|0|-|R/W|0x0006|lock| |
||
169 | |PROTECT|Protection state|2|0|-|R|0x0007|protect| |
||
170 | |CVCC|Constant voltage constant current state|2|0|-|R|0x0008|cv_cc| |
||
171 | |ONOFF|Switch output|2|0|-|R/W|0x0009|onoff| |
||
172 | |B_LED|Backlight brightness level|2|0|-|R/W|0x000A|b_led| |
||
173 | |MODEL|Product number|2|0|-|R|0x000B|model| |
||
174 | |VERSON|Firmware version number|2|0|-|R|0x000C|version| |
||
175 | |EXTRACT_M|Quickly bring up data sets|2|0|-|W|0x0023|extract_m| |
||
176 | |U-SET|Voltage setting|2|2|V|R/W|0x0050|voltage_set2| |
||
177 | |I-SET|Current setting|2|3|A|R/W|0x0051|current_set2| |
||
178 | |S-OVP|Overvoltage protection|2|2|V|R/W|0x0052|s_ovp| |
||
179 | |S-OCP|Overcurrent protection value|2|3|A|R/W|0x0053|s_ocp| |
||
180 | |S-OPP|Over power protection value|2|1、2|W|R/W|0x0054|s_opp| |
||
181 | |B-LED|Backlight brightness level|2|0|-|R/W|0x0055|b_led2| |
||
182 | |M-PRE|The data is called to update the output|2|0|-|R/W|0x0056|m_pre| |
||
183 | |S-INI|Power on the output switch|2|2|-|R/W|0x0057|s_ini| |
||
184 | 75 | Frédéric Blanc | |
185 | 76 | Frédéric Blanc | h3. dps_modbus.py |
186 | 69 | Frédéric Blanc | |
187 | 79 | Frédéric Blanc | |commande|Description| |
188 | 78 | Frédéric Blanc | |voltage_set|Voltage setting| |
189 | |current_set|Current setting| |
||
190 | |voltage|Output voltage display value| |
||
191 | |current|Output current display value| |
||
192 | |power|Output power display value| |
||
193 | |voltage_in|Input voltage display value| |
||
194 | |lock|Key lock| |
||
195 | |protect|Protection state| |
||
196 | |cv_cc|Constant voltage constant current state| |
||
197 | |onoff|Switch output| |
||
198 | |b_led|Backlight brightness level| |
||
199 | |model|Product number| |
||
200 | |version|Firmware version number| |
||
201 | |extract_m|Quickly bring up data sets| |
||
202 | |voltage_set2|Voltage setting| |
||
203 | |current_set2|Current setting| |
||
204 | |s_ovp|Overvoltage protection| |
||
205 | |s_ocp|Overcurrent protection value| |
||
206 | |s_opp|Over power protection value| |
||
207 | |b_led2|Backlight brightness level| |
||
208 | |m_pre|The data is called to update the output| |
||
209 | |s_ini|Power on the output switch| |
||
210 | 77 | Frédéric Blanc | |read_all|Read data as a block, much faster than individual reads| |
211 | |write_voltage_current|write voltage & current as a block| |
||
212 | |write_all|write block| |
||
213 | |||
214 | |||
215 | 31 | Frédéric Blanc | |
216 | 1 | Frédéric Blanc | Slave Address: 1..247 ( *0: broadcast* ) |
217 | 31 | Frédéric Blanc | Function code: see later |
218 | Data: 0..252 byte(s) |
||
219 | 33 | Frédéric Blanc | *CRC16-MODBUS* : see https://crccalc.com/ for code. |
220 | 48 | Frédéric Blanc | https://github.com/LacobusVentura/MODBUS-CRC16 |
221 | 1 | Frédéric Blanc | |
222 | 34 | Frédéric Blanc | h3. test commande |
223 | |||
224 | 97 | Frédéric Blanc | h4. XY6015L |
225 | 46 | Frédéric Blanc | |
226 | 45 | Frédéric Blanc | sur /dev/ttyACM0 |
227 | 1 | Frédéric Blanc | |
228 | 46 | Frédéric Blanc | Broadcast Power ON |
229 | 1 | Frédéric Blanc | <pre><code class="shell"> |
230 | 35 | Frédéric Blanc | echo -ne "\x00\x06\x00\x12\x00\x01\xE9\xDE" > /dev/ttyACM0 |
231 | 34 | Frédéric Blanc | </code></pre> |
232 | |||
233 | 36 | Frédéric Blanc | Broadcast Power OFF |
234 | <pre><code class="shell"> |
||
235 | echo -ne "\x00\x06\x00\x12\x00\x00\x28\x1E" > /dev/ttyACM0 |
||
236 | </code></pre> |
||
237 | 1 | Frédéric Blanc | |
238 | 45 | Frédéric Blanc | sur /dev/ttyUSB0 |
239 | 1 | Frédéric Blanc | |
240 | 46 | Frédéric Blanc | Broadcast Power ON |
241 | 45 | Frédéric Blanc | <pre><code class="shell"> |
242 | echo -ne "\x00\x06\x00\x12\x00\x01\xE9\xDE" > /dev/ttyUSB0 |
||
243 | </code></pre> |
||
244 | |||
245 | Broadcast Power OFF |
||
246 | <pre><code class="shell"> |
||
247 | echo -ne "\x00\x06\x00\x12\x00\x00\x28\x1E" > /dev/ttyUSB0 |
||
248 | 1 | Frédéric Blanc | </code></pre> |
249 | 97 | Frédéric Blanc | |
250 | 98 | Frédéric Blanc | h4. DPS5005 or DPH5005 |
251 | 36 | Frédéric Blanc | |
252 | 99 | Frédéric Blanc | *BAUD Max 9600* |
253 | sur /dev/ttyACM0 |
||
254 | |||
255 | Broadcast Power ON |
||
256 | <pre><code class="shell"> |
||
257 | 100 | Frédéric Blanc | echo -ne "\x00\x06\x00\x09\x00\x01\DE\xE9" > /dev/ttyACM0 |
258 | 99 | Frédéric Blanc | </code></pre> |
259 | |||
260 | Broadcast Power OFF |
||
261 | <pre><code class="shell"> |
||
262 | 100 | Frédéric Blanc | echo -ne "\x00\x06\x00\x09\x00\x00\x1E\x28" > /dev/ttyACM0 |
263 | 99 | Frédéric Blanc | </code></pre> |
264 | |||
265 | sur /dev/ttyUSB0 |
||
266 | |||
267 | Broadcast Power ON |
||
268 | <pre><code class="shell"> |
||
269 | 100 | Frédéric Blanc | echo -ne "\x00\x06\x00\x12\x00\x01\DE\xE9" > /dev/ttyUSB0 |
270 | 99 | Frédéric Blanc | </code></pre> |
271 | |||
272 | Broadcast Power OFF |
||
273 | <pre><code class="shell"> |
||
274 | 100 | Frédéric Blanc | echo -ne "\x00\x06\x00\x12\x00\x00\1E\x28" > /dev/ttyUSB0 |
275 | 99 | Frédéric Blanc | </code></pre> |
276 | |||
277 | 30 | Frédéric Blanc | h3. notice |
278 | 15 | Frédéric Blanc | |
279 | presser [SW] pendant 2s pour accéder aux paramètres |
||
280 | !clipboard-202404041503-e5ifh.png! |
||
281 | |||
282 | 6 | Frédéric Blanc | h2. GUI Python |
283 | |||
284 | 9 | Frédéric Blanc | h3. venv — Création d'environnements virtuels |
285 | 6 | Frédéric Blanc | |
286 | <pre><code class="shell"> |
||
287 | 8 | Frédéric Blanc | $ python3 -m venv venv |
288 | 6 | Frédéric Blanc | </code></pre> |
289 | |||
290 | Pour activer l'environnement, exécutez |
||
291 | |||
292 | <pre><code class="shell"> |
||
293 | source venv/bin/activate |
||
294 | </code></pre> |
||
295 | |||
296 | 7 | Frédéric Blanc | <pre><code class="shell"> |
297 | . venv/bin/activate |
||
298 | </code></pre> |
||
299 | |||
300 | 51 | Frédéric Blanc | sous Windows |
301 | <pre><code class="shell"> |
||
302 | env\Scripts\activate.bat |
||
303 | </code></pre> |
||
304 | |||
305 | 9 | Frédéric Blanc | Vous devrez « quitter » ou « désactiver » votre environnement virtuel à l'aide de la commande |
306 | 6 | Frédéric Blanc | |
307 | <pre><code class="shell"> |
||
308 | deactivate |
||
309 | </code></pre> |
||
310 | |||
311 | |||
312 | |||
313 | 1 | Frédéric Blanc | https://docs.python.org/fr/3/library/venv.html |
314 | |||
315 | 16 | Frédéric Blanc | h3. pyqt5 |
316 | |||
317 | <pre><code class="shell"> |
||
318 | pip3 install pyqt5 --config-settings --confirm-license= --verbose |
||
319 | </code></pre> |
||
320 | |||
321 | 17 | Frédéric Blanc | https://stackoverflow.com/questions/73714829/pip-install-pyqt5-it-cannot-go-on |
322 | 16 | Frédéric Blanc | |
323 | 9 | Frédéric Blanc | h3. XY6015L_pyGUI |
324 | |||
325 | 44 | Frédéric Blanc | lancement de l'interface |
326 | |||
327 | <pre><code class="python"> |
||
328 | python dps_GUI_program.py |
||
329 | </code></pre> |
||
330 | |||
331 | 9 | Frédéric Blanc | !clipboard-202404041117-w53xm.png! |
332 | |||
333 | configuration du port com |
||
334 | |||
335 | le port série peut être corrigé en modifiant le paramètre "port_set" dans "dps5005_limits.ini". |
||
336 | |||
337 | |||
338 | <pre><code class="shell"> |
||
339 | [SectionZero] |
||
340 | The parameters below limit the code from incorrectly transmitting extreme values entered by the user: |
||
341 | if threshold exceeded value defaults to zero: |
||
342 | This file may be adapted for other versions of 'DPSxxxx' power supplies: |
||
343 | |||
344 | [SectionOne] |
||
345 | #leave empty "" for automatic port scanning or set serial port e.g. "/dev/cu.wchusbserial1410" or "/dev/ttyUSB0": |
||
346 | port_set: "/dev/ttyACM0" # |
||
347 | |||
348 | #The parameters below limit the code from incorrectly transmitting extreme values entered by the user: |
||
349 | 1 | Frédéric Blanc | #if threshold exceeded value defaults to zero: |
350 | 10 | Frédéric Blanc | ... |
351 | 9 | Frédéric Blanc | </code></pre> |
352 | |||
353 | 93 | Frédéric Blanc | h2. SCPI |
354 | |||
355 | 94 | Frédéric Blanc | h3. SCPI parser |
356 | |||
357 | À propos de l'analyseur SCPI |
||
358 | |||
359 | La bibliothèque SCPI Parser vise à fournir une capacité d'analyse des commandes SCPI côté instrument. Toutes les commandes sont définies par leurs modèles, par exemple : "STATus:QUEStionable:EVENt?". |
||
360 | |||
361 | Les codes sources sont publiés avec une licence BSD simplifiée open source. |
||
362 | |||
363 | La bibliothèque d'analyseurs SCPI est basée sur ces normes: |
||
364 | 95 | Frédéric Blanc | *SCPI-99 |
365 | IEEE 488.2-2004* |
||
366 | 94 | Frédéric Blanc | |
367 | |||
368 | 93 | Frédéric Blanc | https://github.com/j123b567/scpi-parser |
369 | |||
370 | 9 | Frédéric Blanc | h2. Sources |
371 | 5 | Frédéric Blanc | |
372 | 82 | Frédéric Blanc | https://profimaxblog.ru/dps_update/ |
373 | 26 | Frédéric Blanc | https://www.circuitstate.com/tutorials/what-is-rs-485-how-to-use-max485-with-arduino-for-reliable-long-distance-serial-communication/ |
374 | 29 | Frédéric Blanc | http://xj900diversion.free.fr/bus/I2C%20-%20RS-485%20adapter.htm |
375 | 5 | Frédéric Blanc | https://github.com/AntaresAdroit/RDTech_PS_Comm |
376 | https://github.com/lambcutlet/DPS5005_pyGUI |
||
377 | https://github.com/kbs3056/XY6015L_pyGUI |