Tema 1 · Señales
Departament d’Enginyeria Electrònica
Escola Tècnica Superior d’Enginyeria
Despatx 2.2.14
Grado en Ingeniería Electrónica de Telecomunicación (GIET)
Curso 2026/2027
Prerrequisitos
Una señal es una función que transporta información sobre un fenómeno.
Una función asigna a cada valor de la variable independiente uno relacionado con la variable dependiente. Matemáticamente, lo expresamos como
\[x: \mathbb{R} \to \mathbb{R}, \qquad t \;\longmapsto\; x(t)\]
Conveniene repasar los conjuntos numéricos:
Relación entre conjuntos
Cada conjunto contiene al anterior: \(\mathbb{N} \subset \mathbb{Z} \subset \mathbb{Q} \subset \mathbb{R} \subset \mathbb{C}\).
\[x(t) = A\cos(\omega t + \phi)\]
\(x(t) = 2\cos(\pi t + \pi/2)\): \(T = 2\) s y \(t_0 = -0{,}5\) s
Lo que usaremos todo el curso
La exponencial compleja \(e^{j\theta}\) gira sobre el círculo unidad, y su parte real es una oscilación.
Son aquellas en las que cada término se obtiene multiplicando el anterior por una razón constante \(r\).
Término general: \(\;a_k = a_0\,r^k\)
Suma Finita, con \(r \neq 1\): \(\displaystyle\sum_{k=n_1}^{n_2} r^k = \frac{r^{n_1} - r^{\,n_2+1}}{1-r}\)
Suma Infinita, solo si \(|r| < 1\): \(\;\displaystyle\sum_{k=n_1}^{\infty} r^k = \frac{r^{n_1}}{1-r}\)
📐 Ejemplo 1.1: Serie geométrica
Dada la serie
\[1,\ \frac{1}{2},\ \frac{1}{4},\ \frac{1}{8},\ \frac{1}{16},\ \dots\]
Convegencia de series geométricas
Muy importante, la serie geométrica infinita \(\sum_{k=0}^{\infty} r^k\) converge solo si \(|r| < 1\), y en ese caso su suma infinita es \(1/(1-r)\).
\[\frac{1}{2} + \frac{1}{4} + \frac{1}{8} + \frac{1}{16} + \dots = \sum_{k=1}^{\infty} \left(\frac{1}{2}\right)^k = \frac{1/2}{1 - 1/2} = 1\]
Cada elemento relaciona dos señales: la tensión \(v(t)\) y la corriente \(i(t)\).
Resistencia (ley de Ohm)
\[v(t) = R\,i(t)\]
Condensador
\[i(t) = C\,\frac{dv(t)}{dt}\]
Bobina
\[v(t) = L\,\frac{di(t)}{dt}\]
En función del eje horizontal, una señal puede ser:
Continua: \(\; x(\cdot): \mathbb{R} \to \mathbb{R}\), para todo instante \(t \in \mathbb{R}\).
Discreta: \(\; x[\cdot]: \mathbb{Z} \to \mathbb{R}\), solo en muestras \(n \in \mathbb{Z}\).
Notación
Usaremos paréntesis \((\cdot)\) para señales continuas \(x(t)\); y corchetes \([\cdot]\) para señales discretas, \(x[n]\).
📐 Ejemplo 1.2: Representación de señales
Dibuja las siguientes señales:
a) \(x_1[n] = \{1,\ -1,\ \underset{\uparrow}{2},\ 3,\ 1\}\), donde la flecha indica la muestra \(n = 0\) y la señal es nula fuera de las muestras indicadas
b) \(x_2[n] = \begin{cases} \left(\tfrac{1}{2}\right)^{n}, & n \geq 0 \\ \left(\tfrac{1}{2}\right)^{-n}, & n < 0 \end{cases}\)
c) \(x_3(t) = \begin{cases} t + 1, & -1 \leq t < 1 \\ 1, & 1 \leq t < 2 \\ 0, & \text{en otro caso} \end{cases}\)
d) \(x_4(t) = |\cos(\pi t)|\)
En función del eje vertical, una señal puede ser:
// Misma señal que fig_muestreo (_senal_conversion en figuras_ch01.py): continua de fondo en
// azul claro y muestras en rojo cada Ts.
{
const x = t => 0.58 * Math.sin(2 * Math.PI * 0.42 * t + 4.23)
+ 0.21 * Math.sin(2 * Math.PI * 1.27 * t + 3.26)
+ 0.10 * Math.sin(2 * Math.PI * 3.08 * t + 5.94);
const Ts = Math.round(ts_mu * 10) / 10;
const continua = d3.range(0, 4.0005, 0.004).map(t => ({t, v: x(t)}));
const muestras = d3.range(0, Math.floor(4 / Ts + 1e-9) + 1).map(n => ({t: n * Ts, v: x(n * Ts)}));
return Plot.plot({
width: 900, height: 260, marginTop: 36, marginBottom: 50, marginLeft: 56,
style: {margin: "0 auto", display: "block"},
x: {label: "t", labelAnchor: "center", labelArrow: "none", labelOffset: 46, domain: [-0.2, 4.2], ticks: d3.range(0, 4.01, 0.5)},
y: {label: null, domain: [-1.05, 1.05], ticks: [-1, -0.5, 0, 0.5, 1], grid: true},
marks: [
Plot.frame({stroke: "#333"}),
Plot.ruleY([0], {stroke: "#555", strokeWidth: 0.8}),
Plot.line(continua, {x: "t", y: "v", stroke: "#2c7fb8", strokeWidth: 2, strokeOpacity: 0.25}),
Plot.ruleX(muestras, {x: "t", y1: 0, y2: "v", stroke: "#e74c3c", strokeWidth: 1.5}),
Plot.dot(muestras, {x: "t", y: "v", fill: "#e74c3c", r: 3}),
Plot.text([`Muestreo: x[n] = x(nTₛ), con Tₛ = ${Ts.toFixed(1)} s`], {frameAnchor: "top", dy: -20, fill: "#222"})
]
});
}Periodo y frecuencia de muestreo
Llamamos periodo de muestreo (\(T_s\), del inglés, sampling) al intervalo de tiempo transcurrido entre dos muestras consecutivas; y a su inversa, la frecuencia de muestreo (\(f_s = 1/T_s\)), medida en Hz.
// Misma señal y estilo que fig_cuantizacion: continua de fondo en azul claro, niveles
// permitidos punteados y señal cuantizada en rojo. L = 2^B niveles repartidos en [-1, 1].
{
const x = t => 0.58 * Math.sin(2 * Math.PI * 0.42 * t + 4.23)
+ 0.21 * Math.sin(2 * Math.PI * 1.27 * t + 3.26)
+ 0.10 * Math.sin(2 * Math.PI * 3.08 * t + 5.94);
const L = 2 ** b_cu, paso = 2 / L;
const niveles = d3.range(L).map(k => (k - (L - 1) / 2) * paso);
const q = v => Math.min(Math.max((Math.floor(v / paso) + 0.5) * paso, niveles[0]), niveles[L - 1]);
const continua = d3.range(0, 4.0005, 0.0005).map(t => ({t, v: x(t), q: q(x(t))}));
return Plot.plot({
width: 900, height: 260, marginTop: 36, marginBottom: 50, marginLeft: 56,
style: {margin: "0 auto", display: "block"},
x: {label: "t", labelAnchor: "center", labelArrow: "none", labelOffset: 46, domain: [-0.2, 4.2], ticks: d3.range(0, 4.01, 0.5)},
y: {label: null, domain: [-1.05, 1.05], ticks: [-1, -0.5, 0, 0.5, 1]},
marks: [
Plot.frame({stroke: "#333"}),
Plot.ruleY(niveles, {stroke: "#b0b0b0", strokeWidth: 0.8, strokeDasharray: "2 3"}),
Plot.ruleY([0], {stroke: "#555", strokeWidth: 0.8}),
Plot.line(continua, {x: "t", y: "v", stroke: "#2c7fb8", strokeWidth: 2, strokeOpacity: 0.25}),
Plot.line(continua, {x: "t", y: "q", stroke: "#e74c3c", strokeWidth: 2}),
Plot.text([`Cuantización: B = ${b_cu} bits, L = 2${"⁰¹²³⁴⁵⁶⁷⁸⁹"[b_cu]} = ${L} niveles`], {frameAnchor: "top", dy: -20, fill: "#222"})
]
});
}Bits y niveles de cuantización
Los cuantizadores se definen por su número de bits \(B\), que determina el número de niveles de cuantización: \(L = 2^B\).
📐 Ejemplo 1.3: Entradas y salidas de un Arduino Nano
Identifica las entradas y salidas del Arduino Nano y su tipo (analógico o digital).
📐 Ejemplo 1.4: Señal PWM
Esto es una señal PWM. ¿Es analógica o digital? ¿Continua o discreta? Busca información sobre para qué sirve.