Fichier:Delta PWM.png

De testwiki
Aller à la navigation Aller à la recherche
Fichier d’origine (1 500 × 1 050 pixels, taille du fichier : 84 kio, type MIME : image/png)

Ce fichier provient de Wikimedia Commons et peut être utilisé par d'autres projets. Sa description sur sa page de description est affichée ci-dessous.

Description

Description
English: Principle of the delta Pulse Width Modulation (PWM).
Date
Source

Own work, using gnuplot, python and scipy

 Cette représentation graphique a été créée avec gnuplot par n.
Auteur Cyril BUTTAY
Autorisation
(Réutilisation de ce fichier)
as licensed
Autres versions
Une version vectorielle de cette image existe, dans le format « SVG ». Si elle n’est pas inférieure, elle devrait être utilisée à la place de la présente version pour des affichages en plus grandes dimensions ou nécessitant une meilleure résolution.

File:Delta PWM.png → File:Delta PWM.svg

Pour plus d’informations sur les images vectorielles, consultez la page de transition de Commons vers le format SVG.
Voir aussi les informations à propos de la manière dont le logiciel MediaWiki gère les images au format SVG.

Dans les autres langues
Alemannisch  العربية  беларуская (тарашкевіца)  български  বাংলা  català  нохчийн  čeština  dansk  Deutsch  Ελληνικά  English  British English  Esperanto  español  eesti  euskara  فارسی  suomi  français  Frysk  galego  Alemannisch  עברית  हिन्दी  hrvatski  magyar  հայերեն  Bahasa Indonesia  Ido  italiano  日本語  ქართული  한국어  lietuvių  македонски  മലയാളം  Bahasa Melayu  မြန်မာဘာသာ  norsk bokmål  Plattdüütsch  Nederlands  norsk nynorsk  norsk  occitan  polski  prūsiskan  português  português do Brasil  română  русский  sicilianu  Scots  slovenčina  slovenščina  српски / srpski  svenska  தமிழ்  ไทย  Türkçe  татарча / tatarça  українська  vèneto  Tiếng Việt  中文  中文(中国大陆)  中文(简体)  中文(繁體)  中文(马来西亚)  中文(新加坡)  中文(臺灣)  +/−
Nouvelle image SVG

Conditions d’utilisation

Moi, en tant que détenteur des droits d’auteur sur cette œuvre, je la publie sous les licences suivantes :
GNU head Vous avez la permission de copier, distribuer et modifier ce document selon les termes de la GNU Free Documentation License version 1.2 ou toute version ultérieure publiée par la Free Software Foundation, sans sections inaltérables, sans texte de première page de couverture et sans texte de dernière page de couverture. Un exemplaire de la licence est inclus dans la section intitulée GNU Free Documentation License.
w:fr:Creative Commons
paternité partage à l’identique
Ce fichier est disponible selon les termes de la licence Creative Commons Attribution – Partage dans les Mêmes Conditions 3.0 Non Transposé.
Vous êtes libre :
  • de partager – de copier, distribuer et transmettre cette œuvre
  • d’adapter – de modifier cette œuvre
Sous les conditions suivantes :
  • paternité – Vous devez donner les informations appropriées concernant l'auteur, fournir un lien vers la licence et indiquer si des modifications ont été faites. Vous pouvez faire cela par tout moyen raisonnable, mais en aucune façon suggérant que l’auteur vous soutient ou approuve l’utilisation que vous en faites.
  • partage à l’identique – Si vous modifiez, transformez ou vous basez sur cet élément, vous devez distribuer votre contribution sous une license identique ou compatible à celle de l’original.
Ce bandeau de licence a été ajouté à ce fichier dans le cadre de la procédure de mise à jour des licences des images sous GFDL.
w:fr:Creative Commons
paternité partage à l’identique
Ce fichier est sous licence Creative Commons Attribution – Partage dans les Mêmes Conditions 2.5 Générique, 2.0 Générique et 1.0 Générique.
Vous êtes libre :
  • de partager – de copier, distribuer et transmettre cette œuvre
  • d’adapter – de modifier cette œuvre
Sous les conditions suivantes :
  • paternité – Vous devez donner les informations appropriées concernant l'auteur, fournir un lien vers la licence et indiquer si des modifications ont été faites. Vous pouvez faire cela par tout moyen raisonnable, mais en aucune façon suggérant que l’auteur vous soutient ou approuve l’utilisation que vous en faites.
  • partage à l’identique – Si vous modifiez, transformez ou vous basez sur cet élément, vous devez distribuer votre contribution sous une license identique ou compatible à celle de l’original.
Vous pouvez choisir l’une de ces licences.

This file was generated using the following python code (requires the module scipy)

#!/usr/bin/python
# this file generates data and the gnuplot file used for the delta pwm plot 
# needs python, scipy and gnuplot (4.0 used)
from scipy import *

freq= 0.05 	# frequency of the reference signal
step=1e-2  	# calculation time step
hysteresis=0.15	# hysteresis of the delta pwm
current_increase=0.5 # rate of increase (or decrease) in the output current
current_decrease=-0.5

direction=0	# direction=0 when output current increase, 1 otherwise
current=[0]	# this is the current waveform
pwm=[0]		# This vector is the pwm signal
grid=["0"]	# this vector contains the x-values at which the pwm signal
		# changes state
file = open("data.dat","w") # the data file

for i in range(int(1/(freq*step))):
    reference=sin(i*step*freq*2*pi)
    high_limit=reference+hysteresis
    low_limit=reference-hysteresis
    if direction==0:
        if current[i]<high_limit: 	#if current is increasing, but we still
				 	#are under the upper limit, carry on
            current.append(current[i]+current_increase*step)
            pwm.append(1)		
        else:				#else change pwm state
            current.append(current[i]+current_decrease*step)
            direction=1
	    grid.append("%s"%(i*step)) 	#stores the time value at which the 
					#pwm changed state  
            pwm.append(0)            
    elif direction==1:			#if current is decreasing, but we still
				 	#are over the lower limit, carry on
        if current[i]>low_limit:
            current.append(current[i]+current_decrease*step)
            pwm.append(0)           
        else:				#else change pwm state
            current.append(current[i]+current_increase*step)
            direction=0
	    grid.append("%s"%(i*step)) 	#stores the time value at which the 
					#pwm changed state
            pwm.append(1)
    file.write('%s\t%s\t%s\t%s\t%s\t%s\n'%(i*step,pwm[i],current[i],
                                          high_limit,
                                          low_limit,
                                          reference))
file.close()				# end of data generation

xtics=',"" '.join(grid)			# creates a string used for the x-tics
file = open("delta.plt","w")		# generates the gnuplot file
file.write("""
# This file is used to generate a plot that explains the 
# principle of the delta pwm

# graph configuration
set terminal postscript eps enhanced "Times-Roman" 24 color solid
set encoding iso_8859_15
unset title
set line style 1 lt 3 lw 3 pt 0 ps 0
set line style 2 lt 2 lw 1 pt 0 ps 0
set line style 3 lt 8 lw 2 pt 0 ps 0
set line style 4 lt 4 lw 3 pt 0 ps 0
set border 15 lt 7 lw 4

set grid xtics ytics
set xlabel ""
set format x ""
set bmargin 0
set tmargin 0
  
set ytics ("0" 0)
set xtics (%s)  

set output "delta.eps"
set multiplot
	set ylabel "Analog signals"
	set origin 0,0.54
	set size 1,0.45
	plot [0:19][-1.2:1.2] "data.dat" using 1:6 ls 3 title 'Reference' w l,\
	'' using 1:4 w l ls 2 title 'Limits',\
	'' using 1:5 w l ls 2 title '',\
	'' using 1:3 w l ls 1 title 'Output'

	set ytics ("0" 0, "1" 1)
	set ylabel "PWM signal"
	set xlabel "Time"
	set origin 0,0.09
	plot [0:19][-0.25:1.25] 'data.dat' using 1:2 ls 4 title '' w l
unset multiplot	""" %xtics)
file.close() 				# end of the gnuplot file.

This generates two files, 'data.dat' (data) and 'sigma.plt' (gnuplot source). gnuplot sigma.plt then generates a eps file, which is converted in png using imagemagick.

Légendes

Ajoutez en une ligne la description de ce que représente ce fichier

Éléments décrits dans ce fichier

dépeint

Historique du fichier

Cliquer sur une date et heure pour voir le fichier tel qu'il était à ce moment-là.

Date et heureVignetteDimensionsUtilisateurCommentaire
actuel25 juin 2006 à 22:37Vignette pour la version du 25 juin 2006 à 22:371 500 × 1 050 (84 kio)wikimediacommons>CyrilB~commonswiki{{Information |Description=Principle of the delta Pulse Width Modulation (PWM) |Source=Own work, using gnuplot, python and scipy |Date=25/06/2006 |Author=Cyril BUTTAY |Permission=as licensed |other_versions= }}

La page suivante utilise ce fichier :