lujinglei 2021-01-07 11:12 采纳率: 100%
浏览 114
已结题

采集了一个抽样信号(离散列表),想用python求频率


采样频率50000hz,采样数量1024

被测波形频率1000hz,被测波型:正玄波,被测波 从波峰-波谷 1V,被测波偏移 1V(波的中心位于y轴的1处)

采集列表

[761, 728, 712, 696, 693, 706, 719, 746, 782, 826, 877, 937, 1000, 1067, 1146, 1218, 1308, 1375, 1444, 1521, 1596, 1677, 1720, 1774, 1826, 1862, 1889, 1915, 1920, 1926, 1919, 1900, 1879, 1837, 1790, 1742, 1686, 1625, 1548, 1480, 1406, 1326, 1248, 1174, 1104, 1022, 960, 896, 846, 797, 759, 732, 709, 695, 696, 705, 720, 748, 784, 828, 876, 937, 1005, 1073, 1146, 1221, 1296, 1377, 1452, 1530, 1597, 1663, 1727, 1777, 1828, 1862, 1892, 1916, 1924, 1930, 1917, 1906, 1877, 1841, 1789, 1745, 1683, 1622, 1554, 1481, 1403, 1324, 1252, 1173, 1098, 1022, 959, 899, 846, 802, 762, 730, 709, 700, 698, 705, 712, 749, 785, 831, 879, 937, 991, 1074, 1148, 1219, 1302, 1377, 1453, 1531, 1598, 1658, 1724, 1779, 1827, 1864, 1894, 1914, 1928, 1926, 1919, 1903, 1873, 1846, 1796, 1742, 1682, 1620, 1550, 1476, 1402, 1324, 1244, 1170, 1099, 1026, 958, 897, 844, 797, 759, 721, 709, 699, 697, 705, 721, 747, 784, 832, 888, 941, 1007, 1075, 1149, 1224, 1302, 1379, 1457, 1529, 1601, 1664, 1727, 1769, 1825, 1866, 1895, 1916, 1925, 1928, 1922, 1900, 1876, 1838, 1796, 1736, 1682, 1618, 1548, 1476, 1409, 1321, 1241, 1168, 1097, 1026, 959, 891, 843, 796, 756, 730, 709, 698, 693, 701, 723, 749, 787, 832, 880, 940, 1007, 1077, 1152, 1225, 1300, 1381, 1458, 1531, 1603, 1667, 1729, 1779, 1820, 1864, 1900, 1918, 1928, 1941, 1919, 1902, 1873, 1838, 1787, 1737, 1683, 1615, 1544, 1472, 1397, 1320, 1244, 1165, 1099, 1022, 958, 898, 842, 795, 756, 734, 706, 697, 696, 707, 723, 752, 787, 830, 883, 941, 1002, 1077, 1151, 1229, 1306, 1382, 1444, 1529, 1608, 1668, 1732, 1784, 1829, 1869, 1898, 1916, 1928, 1927, 1919, 1902, 1876, 1836, 1790, 1742, 1678, 1612, 1545, 1470, 1398, 1318, 1240, 1166, 1088, 1024, 954, 892, 843, 788, 759, 730, 708, 697, 697, 710, 725, 748, 783, 826, 900, 945, 1010, 1072, 1152, 1237, 1307, 1387, 1461, 1532, 1592, 1667, 1729, 1785, 1829, 1868, 1899, 1913, 1926, 1927, 1914, 1892, 1875, 1835, 1792, 1738, 1681, 1608, 1550, 1470, 1392, 1316, 1240, 1166, 1088, 1018, 953, 889, 844, 791, 777, 726, 709, 699, 695, 706, 725, 752, 790, 834, 888, 943, 1005, 1081, 1154, 1233, 1308, 1389, 1460, 1530, 1610, 1672, 1734, 1783, 1832, 1870, 1898, 1915, 1926, 1931, 1918, 1898, 1867, 1832, 1791, 1741, 1676, 1611, 1541, 1471, 1398, 1310, 1237, 1171, 1090, 1017, 956, 890, 836, 791, 757, 727, 704, 695, 698, 707, 725, 750, 787, 833, 890, 948, 1012, 1082, 1153, 1231, 1310, 1388, 1462, 1533, 1609, 1672, 1732, 1784, 1826, 1871, 1901, 1916, 1928, 1925, 1919, 1900, 1869, 1835, 1790, 1738, 1677, 1607, 1541, 1471, 1394, 1313, 1237, 1161, 1088, 1016, 950, 888, 837, 793, 752, 724, 708, 694, 700, 704, 725, 755, 792, 838, 893, 948, 1012, 1086, 1160, 1228, 1311, 1391, 1464, 1540, 1606, 1678, 1732, 1784, 1835, 1867, 1896, 1907, 1928, 1928, 1911, 1897, 1872, 1833, 1788, 1730, 1674, 1610, 1538, 1467, 1386, 1309, 1232, 1160, 1080, 1012, 949, 890, 837, 792, 752, 728, 706, 696, 696, 706, 722, 754, 789, 840, 889, 949, 1018, 1086, 1160, 1230, 1314, 1392, 1466, 1540, 1607, 1678, 1733, 1787, 1834, 1866, 1900, 1919, 1927, 1926, 1914, 1898, 1874, 1830, 1785, 1727, 1674, 1606, 1537, 1463, 1385, 1311, 1227, 1157, 1080, 1010, 948, 887, 838, 792, 751, 724, 704, 698, 697, 707, 729, 757, 792, 839, 890, 951, 1016, 1088, 1166, 1236, 1318, 1378, 1469, 1541, 1610, 1673, 1735, 1788, 1834, 1868, 1893, 1914, 1928, 1929, 1916, 1898, 1865, 1830, 1784, 1723, 1667, 1608, 1536, 1461, 1384, 1308, 1234, 1158, 1082, 1012, 946, 893, 834, 792, 752, 726, 708, 696, 697, 708, 726, 758, 793, 838, 892, 953, 1017, 1089, 1160, 1240, 1318, 1391, 1472, 1542, 1613, 1683, 1737, 1793, 1835, 1874, 1899, 1916, 1928, 1924, 1918, 1898, 1868, 1832, 1783, 1731, 1670, 1604, 1535, 1464, 1385, 1308, 1228, 1154, 1078, 1012, 946, 888, 832, 792, 754, 722, 704, 696, 697, 710, 731, 757, 788, 839, 900, 953, 1021, 1088, 1165, 1242, 1315, 1395, 1469, 1545, 1618, 1679, 1739, 1791, 1835, 1876, 1898, 1919, 1929, 1925, 1921, 1897, 1861, 1829, 1782, 1734, 1667, 1600, 1536, 1458, 1382, 1307, 1224, 1158, 1078, 1009, 943, 883, 830, 788, 753, 724, 704, 694, 698, 709, 729, 758, 794, 842, 898, 957, 1022, 1094, 1168, 1244, 1318, 1395, 1473, 1544, 1616, 1682, 1735, 1794, 1838, 1876, 1907, 1919, 1924, 1926, 1915, 1899, 1863, 1826, 1780, 1730, 1668, 1600, 1534, 1460, 1378, 1304, 1224, 1152, 1080, 1006, 942, 884, 833, 786, 751, 721, 703, 694, 696, 709, 724, 757, 798, 840, 897, 954, 1019, 1096, 1168, 1240, 1323, 1399, 1474, 1549, 1616, 1681, 1740, 1794, 1835, 1871, 1902, 1921, 1928, 1926, 1898, 1895, 1866, 1824, 1780, 1722, 1667, 1600, 1528, 1456, 1380, 1302, 1225, 1152, 1074, 1011, 944, 882, 828, 785, 752, 723, 707, 696, 706, 711, 728, 760, 796, 846, 899, 957, 1026, 1101, 1173, 1247, 1325, 1401, 1476, 1552, 1618, 1683, 1743, 1800, 1842, 1874, 1913, 1919, 1925, 1932, 1914, 1894, 1864, 1827, 1780, 1724, 1667, 1597, 1526, 1455, 1378, 1301, 1224, 1148, 1075, 1006, 940, 883, 829, 784, 746, 721, 703, 696, 706, 710, 730, 758, 797, 846, 898, 960, 1027, 1102, 1173, 1249, 1326, 1400, 1478, 1552, 1621, 1687, 1750, 1792, 1841, 1872, 1903, 1920, 1926, 1925, 1915, 1897, 1864, 1824, 1778, 1718, 1666, 1597, 1527, 1452, 1371, 1301, 1222, 1143, 1079, 1002, 939, 880, 826, 784, 751, 720, 702, 695, 700, 711, 732, 759, 794, 844, 888, 962, 1030, 1096, 1173, 1248, 1331, 1406, 1483, 1554, 1621, 1696, 1742, 1796, 1841, 1880, 1909, 1916, 1920, 1930, 1915, 1896, 1864, 1822, 1774, 1719, 1658, 1600, 1525, 1448, 1374, 1301, 1218, 1143, 1074, 1003, 938, 878, 830, 780, 749, 724, 704, 695, 701, 710, 734, 762, 800, 846, 904, 965, 1032, 1103, 1178, 1255, 1333, 1404, 1480, 1554, 1626, 1690, 1750, 1800, 1840, 1877, 1901, 1918, 1929, 1926, 1915, 1896, 1860, 1826, 1777, 1720, 1665, 1593, 1524, 1448, 1369, 1298, 1221, 1142, 1069, 999, 940, 877, 826, 784, 750, 724, 702, 692, 698, 711, 730, 763, 802, 853, 903, 963, 1030, 1096, 1178, 1256, 1330, 1412, 1483, 1555, 1624, 1696, 1750, 1800]
使用python开发求出频率和1khz做对比。

  • 写回答

1条回答 默认 最新

  • canmoumou 2023-11-24 15:18
    关注
    import numpy as np
    import matplotlib.pyplot as plt
    
    # 采样频率和采样数量
    sample_rate = 50000  # Hz
    sample_count = 1024
    
    # 被测波形频率
    signal_frequency = 1000  # Hz
    
    # 生成被测波形
    t = np.arange(0, sample_count) / sample_rate
    signal = 1 * np.sin(2 * np.pi * signal_frequency * t) + 1
    
    # 生成采集列表
    data = [761, 728, 712, 696, 693, 706, 719, 746, 782, 826, 877, 937, 1800]
    
    # 进行傅里叶变换
    fft_result = np.fft.fft(data)
    fft_magnitude = np.abs(fft_result)
    fft_freq = np.fft.fftfreq(len(data), d=1/sample_rate)
    
    # 找到主频率的索引
    main_frequency_index = np.argmax(fft_magnitude[1:]) + 1
    main_frequency = fft_freq[main_frequency_index]
    
    print("Detected frequency:", main_frequency, "Hz")
    
    # 绘制波形和频谱
    plt.subplot(2, 1, 1)
    plt.plot(t, signal)
    plt.title("Original Signal")
    plt.xlabel("Time (s)")
    plt.ylabel("Amplitude")
    
    plt.subplot(2, 1, 2)
    plt.plot(fft_freq, fft_magnitude)
    plt.title("Frequency Spectrum")
    plt.xlabel("Frequency (Hz)")
    plt.ylabel("Magnitude")
    
    plt.show()
    
    
    

    img

    不知道对不对

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月8日
  • 已采纳回答 11月30日

悬赏问题

  • ¥15 Oracle中如何从clob类型截取特定字符串后面的字符
  • ¥15 想通过pywinauto自动电机应用程序按钮,但是找不到应用程序按钮信息
  • ¥15 MATLAB中streamslice问题
  • ¥15 如何在炒股软件中,爬到我想看的日k线
  • ¥15 seatunnel 怎么配置Elasticsearch
  • ¥15 PSCAD安装问题 ERROR: Visual Studio 2013, 2015, 2017 or 2019 is not found in the system.
  • ¥15 (标签-MATLAB|关键词-多址)
  • ¥15 关于#MATLAB#的问题,如何解决?(相关搜索:信噪比,系统容量)
  • ¥500 52810做蓝牙接受端
  • ¥15 基于PLC的三轴机械手程序