Project

General

Profile

Wiki » History » Version 48

Frédéric Blanc, 2024-05-29 10:52

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
h3. non isoler
14 24 Frédéric Blanc
15
!clipboard-202404091414-fugem.png!
16
17 21 Frédéric Blanc
!clipboard-202404081517-wbjgq.png!
18
19 27 Frédéric Blanc
h4. Fusibles réarmables
20
21
!clipboard-202404091611-8b8z9.png!
22
23 23 Frédéric Blanc
h3. Texas Instruments ISOW14x2 Isolated RS-485 DC-DC Converter
24 22 Frédéric Blanc
25
!clipboard-202404081533-dzk67.png!
26
27 18 Frédéric Blanc
h3.  ANALOG DEVICES LTM2881CV-5#PBF
28
29 19 Frédéric Blanc
!clipboard-202404051942-kmfn5.jpg!
30
31 18 Frédéric Blanc
Transceiver, RS422, RS485, 20 Mbps, 1 Driver, 1 Récepteur, 4,5 à 5.5V, 0 à 70°C, LGA-32
32
33
Code Farnell 4023829
34
35
h3. ADM2865E Power Isolated, RS-485 Transceivers
36 12 Frédéric Blanc
37 1 Frédéric Blanc
!clipboard-202404041435-zyzea.png!
38 12 Frédéric Blanc
39 13 Frédéric Blanc
|Code Farnell|Référence Fabricant	|Fabricant / Description|
40 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|
41
|1456395	|SM712.TCT	|SEMTECH  Diode TVS, SM, Bidirectionelle, 12 V, 26 V, SOT-23, 3 Broche(s)|
42
|1515786	|BLM15HD182SN1D	|MURATA  Perle de ferrite, 0402 [1005 Metric], 1.8 kohm, 200 mA, BLM15H, 2.2 ohm, ± 25%|
43
|1867958	|08053D106KAT2A	|KYOCERA AVX  Condensateur céramique multicouche CMS, 10 µF, 25 V, 0805 [Métrique 2012], ± 10%, X5R|
44
|2443238	|BLM18HE601SN1D	|MURATA  Perle de ferrite, 0603 [1608 Metric], 600 ohm, 800 mA, BLM18H, 0.25 ohm, ± 25%|
45 11 Frédéric Blanc
46 37 Frédéric Blanc
h3. Module de communication d'isolation, ADUM3201 + B0505XT TTL à RS485
47
48
!clipboard-202404231543-s8vft.png!
49
50
*Attention RX sur TX*
51
52 28 Frédéric Blanc
h3. RS485 I2C
53
54
!clipboard-202404120929-wdgmq.png!
55
56 20 Frédéric Blanc
h2. XY5005E
57
58 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
59 20 Frédéric Blanc
60
!clipboard-202404081443-iygma.png!
61 39 Frédéric Blanc
!clipboard-202404241236-ulutn.png!
62 38 Frédéric Blanc
!clipboard-202404241234-m5crk.png!
63
64 14 Frédéric Blanc
h2. XY6015L Step-Down Regulated Power Supply
65 1 Frédéric Blanc
66
!clipboard-202403251011-lfrn1.png!
67
68 4 Frédéric Blanc
µC AT32F421  ARM® Cortex®-M4 core
69
Ctrl EG1163S BUCK DC-DC de Rectification synchrone 300kHz
70
MOS NCE82H140
71
72 31 Frédéric Blanc
h3. Modbus
73
74 1 Frédéric Blanc
!clipboard-202404121322-qk0l1.png!
75 32 Frédéric Blanc
76 47 Frédéric Blanc
/dev/ttyACM0 ou /dev/ttyUSB0
77 32 Frédéric Blanc
baud rate *115200*
78 31 Frédéric Blanc
79 1 Frédéric Blanc
Slave Address: 1..247 ( *0: broadcast* )
80 31 Frédéric Blanc
Function code: see later
81
Data: 0..252 byte(s)
82 33 Frédéric Blanc
*CRC16-MODBUS* : see https://crccalc.com/ for code.
83 48 Frédéric Blanc
https://github.com/LacobusVentura/MODBUS-CRC16
84 31 Frédéric Blanc
85 1 Frédéric Blanc
Modbus registers:
86
U_SET = 0
87
I_SET = 1
88
UOUT = 2
89
IOUT = 3
90
POWER = 4
91
UIN = 5
92
Ah = 6
93
PROTECT = 7 # not tested
94
Wh = 8
95
Time = 11
96
Temp = 13
97
Lock = 15
98
CV_CC = 17
99
ONOFF = 18
100
Celsius = 19
101
MODEL = 22 # ?
102 5 Frédéric Blanc
VERSION = 23 # ?
103 1 Frédéric Blanc
104 34 Frédéric Blanc
h3. test commande
105
106 1 Frédéric Blanc
107 46 Frédéric Blanc
108 45 Frédéric Blanc
sur /dev/ttyACM0
109 1 Frédéric Blanc
110 46 Frédéric Blanc
Broadcast Power ON
111 1 Frédéric Blanc
<pre><code class="shell">
112 35 Frédéric Blanc
echo -ne "\x00\x06\x00\x12\x00\x01\xE9\xDE" > /dev/ttyACM0
113 34 Frédéric Blanc
</code></pre>
114
115 36 Frédéric Blanc
Broadcast Power OFF
116
<pre><code class="shell">
117
echo -ne "\x00\x06\x00\x12\x00\x00\x28\x1E" > /dev/ttyACM0
118
</code></pre>
119 1 Frédéric Blanc
120 45 Frédéric Blanc
sur /dev/ttyUSB0
121 1 Frédéric Blanc
122 46 Frédéric Blanc
Broadcast Power ON
123 45 Frédéric Blanc
<pre><code class="shell">
124
echo -ne "\x00\x06\x00\x12\x00\x01\xE9\xDE" > /dev/ttyUSB0
125
</code></pre>
126
127
Broadcast Power OFF
128
<pre><code class="shell">
129
echo -ne "\x00\x06\x00\x12\x00\x00\x28\x1E" > /dev/ttyUSB0
130
</code></pre>
131 36 Frédéric Blanc
132 30 Frédéric Blanc
h3. notice
133 15 Frédéric Blanc
134
presser [SW] pendant 2s pour accéder aux paramètres 
135
!clipboard-202404041503-e5ifh.png!
136
137 6 Frédéric Blanc
h2. GUI Python
138
139 9 Frédéric Blanc
h3. venv — Création d'environnements virtuels
140 6 Frédéric Blanc
141
<pre><code class="shell">
142 8 Frédéric Blanc
$ python3 -m venv venv
143 6 Frédéric Blanc
</code></pre>
144
145
Pour activer l'environnement, exécutez
146
147
<pre><code class="shell">
148
source venv/bin/activate
149
</code></pre>
150
151 7 Frédéric Blanc
<pre><code class="shell">
152
. venv/bin/activate
153
</code></pre>
154
155 9 Frédéric Blanc
Vous devrez « quitter » ou « désactiver » votre environnement virtuel à l'aide de la commande 
156 6 Frédéric Blanc
157
<pre><code class="shell">
158
deactivate
159
</code></pre>
160
161
162
163 1 Frédéric Blanc
https://docs.python.org/fr/3/library/venv.html
164
165 16 Frédéric Blanc
h3. pyqt5
166
167
<pre><code class="shell">
168
pip3 install pyqt5 --config-settings --confirm-license= --verbose
169
</code></pre>
170
171 17 Frédéric Blanc
https://stackoverflow.com/questions/73714829/pip-install-pyqt5-it-cannot-go-on
172 16 Frédéric Blanc
173 9 Frédéric Blanc
h3. XY6015L_pyGUI
174
175 44 Frédéric Blanc
lancement de l'interface
176
177
<pre><code class="python">
178
python dps_GUI_program.py
179
</code></pre>
180
181 9 Frédéric Blanc
!clipboard-202404041117-w53xm.png!
182
183
configuration du port com
184
185
le port série peut être corrigé en modifiant le paramètre "port_set" dans "dps5005_limits.ini".
186
187
188
<pre><code class="shell">
189
[SectionZero]
190
The parameters below limit the code from incorrectly transmitting extreme values entered by the user:
191
if threshold exceeded value defaults to zero:
192
This file may be adapted for other versions of 'DPSxxxx' power supplies:
193
194
[SectionOne]
195
#leave empty "" for automatic port scanning or set serial port e.g. "/dev/cu.wchusbserial1410" or "/dev/ttyUSB0":
196
port_set: "/dev/ttyACM0"	#
197
198
#The parameters below limit the code from incorrectly transmitting extreme values entered by the user:
199 1 Frédéric Blanc
#if threshold exceeded value defaults to zero:
200 10 Frédéric Blanc
...
201 9 Frédéric Blanc
</code></pre>
202
203
h2. Sources
204 5 Frédéric Blanc
205 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/
206 29 Frédéric Blanc
http://xj900diversion.free.fr/bus/I2C%20-%20RS-485%20adapter.htm
207 5 Frédéric Blanc
https://github.com/AntaresAdroit/RDTech_PS_Comm
208
https://github.com/lambcutlet/DPS5005_pyGUI
209
https://github.com/kbs3056/XY6015L_pyGUI