本发明提供了一种基于FPGA的谐波补偿方法,在FPGA中构建谐波补偿电路,谐波补偿电路包括依次连接的矫正波形生产模块、矫正波形相位控制模块、矫正波形幅度控制模块和求和模块。谐波补偿方法包括采用希尔伯特变换求取原始波形数据的正交波形数据,然后根据正交波形数据计算得到各次谐波波形数据;在矫正波形相位控制模块中计算出各次谐波波形的矫正相位,利用矫正相位对各次谐波进行相位修正;在矫正波形幅度控制模块中计算出各次谐波波形的矫正放大因子,将放大因子与各次谐波波形数据相乘;完成幅度控制的各次谐波矫正波形数据与原波形数据进行求和运算。本发明的补偿方法对环境敏感度不高,可以对任意频率有针对性地实现谐波的精确补偿。